大家好!今天給你們帶來了使用pandas和tabulate制作簡單表格的例項。
安裝pandas和tabulate:
pip install pandas tabulate
1.成績表
import pandas as pd
from tabulate import tabulate
#數據
data = {'姓名': ['張三', '李四', '王五'],
'語文': [90, 85, 92],
'數學': [95, 92, 88],
'英語': [88, 90, 85]}
df = pd.DataFrame(data)
df.set_index('姓名', inplace=True)
#將DataFrame轉換為表格並打印
table = tabulate(df, headers='keys', tablefmt='fancy_grid')
print(table)
輸出:
╒════════╤════════╤════════╤════════╕
│ 姓名 │ 語文 │ 數學 │ 英語 │
╞════════╪════════╪════════╪════════╡
│ 張三 │ 90 │ 95 │ 88 │
├────────┼────────┼────────┼────────┤
│ 李四 │ 85 │ 92 │ 90 │
├────────┼────────┼────────┼────────┤
│ 王五 │ 92 │ 88 │ 85 │
╘════════╧════════╧════════╧════════╛
2.元素周期表
import pandas as pd
from tabulate import tabulate
#元質數據
elements = [
{'原子序數': 1, '元素符號': 'H', '元素名稱': '氫', '原子量': 1.008},
{'原子序數': 2, '元素符號': 'He', '元素名稱': '氦', '原子量': 4.0026},
{'原子序數': 3, '元素符號': 'Li', '元素名稱': '鋰', '原子量': 6.94},
{'原子序數': 4, '元素符號': 'Be', '元素名稱': '鈹', '原子量': 9.0122},
{'原子序數': 5, '元素符號': 'B', '元素名稱': '硼', '原子量': 10.81},
{'原子序數': 6, '元素符號': 'C', '元素名稱': '碳', '原子量': 12.011},
{'原子序數': 7, '元素符號': 'N', '元素名稱': '氮', '原子量': 14.007},
{'原子序數': 8, '元素符號': 'O', '元素名稱': '氧', '原子量': 15.999},
{'原子序數': 9, '元素符號': 'F', '元素名稱': '氟', '原子量': 18.998},
{'原子序數': 10, '元素符號': 'Ne', '元素名稱': '氖', '原子量': 20.180},
{'原子序數': 11, '元素符號': 'Na', '元素名稱': '鈉', '原子量': 22.990},
{'原子序數': 12, '元素符號': 'Mg', '元素名稱': '鎂', '原子量': 24.305},
{'原子序數': 13, '元素符號': 'Al', '元素名稱': '鋁', '原子量': 26.982},
{'原子序數': 14, '元素符號': 'Si', '元素名稱': '矽', '原子量': 28.085},
{'原子序數': 15, '元素符號': 'P', '元素名稱': '磷', '原子量': 30.974},
{'原子序數': 16, '元素符號': 'S', '元素名稱': '硫', '原子量': 32.06},
{'原子序數': 17, '元素符號': 'Cl', '元素名稱': '氯', '原子量': 35.45},
{'原子序數': 18, '元素符號': 'Ar', '元素名稱': '氬', '原子量': 39.948},
{'原子序數': 19, '元素符號': 'K', '元素名稱': '鉀', '原子量': 39.098},
{'原子序數': 20, '元素符號': 'Ca', '元素名稱': '鈣', '原子量': 40.078},
{'原子序數': 21, '元素符號': 'Sc', '元素名稱': '鈧', '原子量': 44.956},
{'原子序數': 22, '元素符號': 'Ti', '元素名稱': '鈦', '原子量': 47.867},
{'原子序數': 23, '元素符號': 'V', '元素名稱': '釩', '原子量': 50.942},
{'原子序數': 24, '元素符號': 'Cr', '元素名稱': '鉻', '原子量': 51.996},
{'原子序數': 25, '元素符號': 'Mn', '元素名稱': '錳', '原子量': 54.938},
{'原子序數': 26, '元素符號': 'Fe', '元素名稱': '鐵', '原子量': 55.845},
{'原子序數': 27, '元素符號': 'Co', '元素名稱': '鈷', '原子量': 58.933},
{'原子序數': 28, '元素符號': 'Ni', '元素名稱': '鎳', '原子量': 58.693},
{'原子序數': 29, '元素符號': 'Cu', '元素名稱': '銅', '原子量': 63.546},
{'原子序數': 30, '元素符號': 'Zn', '元素名稱': '鋅', '原子量': 65.38},
{'原子序數': 31, '元素符號': 'Ga', '元素名稱': '鎵', '原子量': 69.723},
{'原子序數': 32, '元素符號': 'Ge', '元素名稱': '鍺', '原子量': 72.630},
{'原子序數': 33, '元素符號': 'As', '元素名稱': '砷', '原子量': 74.922},
{'原子序數': 34, '元素符號': 'Se', '元素名稱': '硒', '原子量': 78.971},
{'原子序數': 35, '元素符號': 'Br', '元素名稱': '溴', '原子量': 79.904},
{'原子序數': 36, '元素符號': 'Kr', '元素名稱': '氪', '原子量': 83.798},
{'原子序數': 37, '元素符號': 'Rb', '元素名稱': '銣', '原子量': 85.468},
{'原子序數': 38, '元素符號': 'Sr', '元素名稱': '鍶', '原子量': 87.62},
{'原子序數': 39, '元素符號': 'Y', '元素名稱': '釔', '原子量': 88.906},
{'原子序數': 40, '元素符號': 'Zr', '元素名稱': '鋯', '原子量': 91.224},
{'原子序數': 41, '元素符號': 'Nb', '元素名稱': '鈮', '原子量': 92.906},
{'原子序數': 42, '元素符號': 'Mo', '元素名稱': '鉬', '原子量': 95.95},
{'原子序數': 43, '元素符號': 'Tc', '元素名稱': '鍀', '原子量': 98},
{'原子序數': 44, '元素符號': 'Ru', '元素名稱': '釕', '原子量': 101.07},
{'原子序數': 45, '元素符號': 'Rh', '元素名稱': '銠', '原子量': 102.91},
{'原子序數': 46, '元素符號': 'Pd', '元素名稱': '鈀', '原子量': 106.42},
{'原子序數': 47, '元素符號': 'Ag', '元素名稱': '銀', '原子量': 107.87},
{'原子序數': 48, '元素符號': 'Cd', '元素名稱': '鎘', '原子量': 112.41},
{'原子序數': 49, '元素符號': 'In', '元素名稱': '銦', '原子量': 114.82},
{'原子序數': 50, '元素符號': 'Sn', '元素名稱': '錫', '原子量': 118.71},
{'原子序數': 51, '元素符號': 'Sb', '元素名稱': '銻', '原子量': 121.76},
{'原子序數': 52, '元素符號': 'Te', '元素名稱': '碲', '原子量': 127.60},
{'原子序數': 53, '元素符號': 'I', '元素名稱': '碘', '原子量': 126.90},
{'原子序數': 54, '元素符號': 'Xe', '元素名稱': '氙', '原子量': 131.29},
{'原子序數': 55, '元素符號': 'Cs', '元素名稱': '銫', '原子量': 132.91},
{'原子序數': 56, '元素符號': 'Ba', '元素名稱': '鋇', '原子量': 137.33},
{'原子序數': 57, '元素符號': 'La', '元素名稱': '鑭', '原子量': 138.91},
{'原子序數': 58, '元素符號': 'Ce', '元素名稱': '鈰', '原子量': 140.12},
{'原子序數': 59, '元素符號': 'Pr', '元素名稱': '鐠', '原子量': 140.91},
{'原子序數': 60, '元素符號': 'Nd', '元素名稱': '釹', '原子量': 144.24},
{'原子序數': 61, '元素符號': 'Pm', '元素名稱': '鉕', '原子量': 145},
{'原子序數': 62, '元素符號': 'Sm', '元素名稱': '釤', '原子量': 150.36},
{'原子序數': 63, '元素符號': 'Eu', '元素名稱': '銪', '原子量': 152.92},
{'原子序數': 64, '元素符號': 'Gd', '元素名稱': '釓', '原子量': 157.25},
{'原子序數': 65, '元素符號': 'Tb', '元素名稱': '鋱', '原子量': 158.93},
{'原子序數': 66, '元素符號': 'Dy', '元素名稱': '鏑', '原子量': 162.50},
{'原子序數': 67, '元素符號': 'Ho', '元素名稱': '鈥', '原子量': 164.93},
{'原子序數': 68, '元素符號': 'Er', '元素名稱': '鉺', '原子量': 167.26},
{'原子序數': 69, '元素符號': 'Tm', '元素名稱': '銩', '原子量': 168.93},
{'原子序數': 70, '元素符號': 'Yb', '元素名稱': '鐿', '原子量': 173.05},
{'原子序數': 71, '元素符號': 'Lu', '元素名稱': '鑥', '原子量': 174.97},
{'原子序數': 72, '元素符號': 'Hf', '元素名稱': '鉿', '原子量': 178.49},
{'原子序數': 73, '元素符號': 'Ta', '元素名稱': '鉭', '原子量': 180.95},
{'原子序數': 74, '元素符號': 'W', '元素名稱': '鎢', '原子量': 183.84},
{'原子序數': 75, '元素符號': 'Re', '元素名稱': '錸', '原子量': 186.21},
{'原子序數': 76, '元素符號': 'Os', '元素名稱': '鋨', '原子量': 190.23},
{'原子序數': 77, '元素符號': 'Ir', '元素名稱': '銥', '原子量': 192.22},
]
#建立DataFrame
df = pd.DataFrame(elements)
#指定列順序
df = df[['原子序數', '元素符號', '元素名稱', '原子量']]
#設定原子序數為索引
df.set_index('原子序數', inplace=True)
#轉換為表格格式
table = tabulate(df, headers='keys', tablefmt='fancy_grid')
#打印元素周期表
print(table)
輸出:
╒════════════╤════════════╤════════════╤══════════╕
│ 原子序數 │ 元素符號 │ 元素名稱 │ 原子量 │
╞════════════╪════════════╪════════════╪══════════╡
│ 1 │ H │ 氫 │ 1.008 │
├────────────┼────────────┼────────────┼──────────┤
│ 2 │ He │ 氦 │ 4.0026 │
├────────────┼────────────┼────────────┼──────────┤
│ 3 │ Li │ 鋰 │ 6.94 │
├────────────┼────────────┼────────────┼──────────┤
│ 4 │ Be │ 鈹 │ 9.0122 │
├────────────┼────────────┼────────────┼──────────┤
│ 5 │ B │ 硼 │ 10.81 │
├────────────┼────────────┼────────────┼──────────┤
│ 6 │ C │ 碳 │ 12.011 │
├────────────┼────────────┼────────────┼──────────┤
│ 7 │ N │ 氮 │ 14.007 │
├────────────┼────────────┼────────────┼──────────┤
│ 8 │ O │ 氧 │ 15.999 │
├────────────┼────────────┼────────────┼──────────┤
│ 9 │ F │ 氟 │ 18.998 │
├────────────┼────────────┼────────────┼──────────┤
│ 10 │ Ne │ 氖 │ 20.18 │
├────────────┼────────────┼────────────┼──────────┤
│ 11 │ Na │ 鈉 │ 22.99 │
├────────────┼────────────┼────────────┼──────────┤
│ 12 │ Mg │ 鎂 │ 24.305 │
├────────────┼────────────┼────────────┼──────────┤
│ 13 │ Al │ 鋁 │ 26.982 │
├────────────┼────────────┼────────────┼──────────┤
│ 14 │ Si │ 矽 │ 28.085 │
├────────────┼────────────┼────────────┼──────────┤
│ 15 │ P │ 磷 │ 30.974 │
├────────────┼────────────┼────────────┼──────────┤
│ 16 │ S │ 硫 │ 32.06 │
├────────────┼────────────┼────────────┼──────────┤
│ 17 │ Cl │ 氯 │ 35.45 │
├────────────┼────────────┼────────────┼──────────┤
│ 18 │ Ar │ 氬 │ 39.948 │
├────────────┼────────────┼────────────┼──────────┤
│ 19 │ K │ 鉀 │ 39.098 │
├────────────┼────────────┼────────────┼──────────┤
│ 20 │ Ca │ 鈣 │ 40.078 │
├────────────┼────────────┼────────────┼──────────┤
│ 21 │ Sc │ 鈧 │ 44.956 │
├────────────┼────────────┼────────────┼──────────┤
│ 22 │ Ti │ 鈦 │ 47.867 │
├────────────┼────────────┼────────────┼──────────┤
│ 23 │ V │ 釩 │ 50.942 │
├────────────┼────────────┼────────────┼──────────┤
│ 24 │ Cr │ 鉻 │ 51.996 │
├────────────┼────────────┼────────────┼──────────┤
│ 25 │ Mn │ 錳 │ 54.938 │
├────────────┼────────────┼────────────┼──────────┤
│ 26 │ Fe │ 鐵 │ 55.845 │
├────────────┼────────────┼────────────┼──────────┤
│ 27 │ Co │ 鈷 │ 58.933 │
├────────────┼────────────┼────────────┼──────────┤
│ 28 │ Ni │ 鎳 │ 58.693 │
├────────────┼────────────┼────────────┼──────────┤
│ 29 │ Cu │ 銅 │ 63.546 │
├────────────┼────────────┼────────────┼──────────┤
│ 30 │ Zn │ 鋅 │ 65.38 │
├────────────┼────────────┼────────────┼──────────┤
│ 31 │ Ga │ 鎵 │ 69.723 │
├────────────┼────────────┼────────────┼──────────┤
│ 32 │ Ge │ 鍺 │ 72.63 │
├────────────┼────────────┼────────────┼──────────┤
│ 33 │ As │ 砷 │ 74.922 │
├────────────┼────────────┼────────────┼──────────┤
│ 34 │ Se │ 硒 │ 78.971 │
├────────────┼────────────┼────────────┼──────────┤
│ 35 │ Br │ 溴 │ 79.904 │
├────────────┼────────────┼────────────┼──────────┤
│ 36 │ Kr │ 氪 │ 83.798 │
├────────────┼────────────┼────────────┼──────────┤
│ 37 │ Rb │ 銣 │ 85.468 │
├────────────┼────────────┼────────────┼──────────┤
│ 38 │ Sr │ 鍶 │ 87.62 │
├────────────┼────────────┼────────────┼──────────┤
│ 39 │ Y │ 釔 │ 88.906 │
├────────────┼────────────┼────────────┼──────────┤
│ 40 │ Zr │ 鋯 │ 91.224 │
├────────────┼────────────┼────────────┼──────────┤
│ 41 │ Nb │ 鈮 │ 92.906 │
├────────────┼────────────┼────────────┼──────────┤
│ 42 │ Mo │ 鉬 │ 95.95 │
├────────────┼────────────┼────────────┼──────────┤
│ 43 │ Tc │ 鍀 │ 98 │
├────────────┼────────────┼────────────┼──────────┤
│ 44 │ Ru │ 釕 │ 101.07 │
├────────────┼────────────┼────────────┼──────────┤
│ 45 │ Rh │ 銠 │ 102.91 │
├────────────┼────────────┼────────────┼──────────┤
│ 46 │ Pd │ 鈀 │ 106.42 │
├────────────┼────────────┼────────────┼──────────┤
│ 47 │ Ag │ 銀 │ 107.87 │
├────────────┼────────────┼────────────┼──────────┤
│ 48 │ Cd │ 鎘 │ 112.41 │
├────────────┼────────────┼────────────┼──────────┤
│ 49 │ In │ 銦 │ 114.82 │
├────────────┼────────────┼────────────┼──────────┤
│ 50 │ Sn │ 錫 │ 118.71 │
├────────────┼────────────┼────────────┼──────────┤
│ 51 │ Sb │ 銻 │ 121.76 │
├────────────┼────────────┼────────────┼──────────┤
│ 52 │ Te │ 碲 │ 127.6 │
├────────────┼────────────┼────────────┼──────────┤
│ 53 │ I │ 碘 │ 126.9 │
├────────────┼────────────┼────────────┼──────────┤
│ 54 │ Xe │ 氙 │ 131.29 │
├────────────┼────────────┼────────────┼──────────┤
│ 55 │ Cs │ 銫 │ 132.91 │
├────────────┼────────────┼────────────┼──────────┤
│ 56 │ Ba │ 鋇 │ 137.33 │
├────────────┼────────────┼────────────┼──────────┤
│ 57 │ La │ 鑭 │ 138.91 │
├────────────┼────────────┼────────────┼──────────┤
│ 58 │ Ce │ 鈰 │ 140.12 │
├────────────┼────────────┼────────────┼──────────┤
│ 59 │ Pr │ 鐠 │ 140.91 │
├────────────┼────────────┼────────────┼──────────┤
│ 60 │ Nd │ 釹 │ 144.24 │
├────────────┼────────────┼────────────┼──────────┤
│ 61 │ Pm │ 鉕 │ 145 │
├────────────┼────────────┼────────────┼──────────┤
│ 62 │ Sm │ 釤 │ 150.36 │
├────────────┼────────────┼────────────┼──────────┤
│ 63 │ Eu │ 銪 │ 152.92 │
├────────────┼────────────┼────────────┼──────────┤
│ 64 │ Gd │ 釓 │ 157.25 │
├────────────┼────────────┼────────────┼──────────┤
│ 65 │ Tb │ 鋱 │ 158.93 │
├────────────┼────────────┼────────────┼──────────┤
│ 66 │ Dy │ 鏑 │ 162.5 │
├────────────┼────────────┼────────────┼──────────┤
│ 67 │ Ho │ 鈥 │ 164.93 │
├────────────┼────────────┼────────────┼──────────┤
│ 68 │ Er │ 鉺 │ 167.26 │
├────────────┼────────────┼────────────┼──────────┤
│ 69 │ Tm │ 銩 │ 168.93 │
├────────────┼────────────┼────────────┼──────────┤
│ 70 │ Yb │ 鐿 │ 173.05 │
├────────────┼────────────┼────────────┼──────────┤
│ 71 │ Lu │ 鑥 │ 174.97 │
├────────────┼────────────┼────────────┼──────────┤
│ 72 │ Hf │ 鉿 │ 178.49 │
├────────────┼────────────┼────────────┼──────────┤
│ 73 │ Ta │ 鉭 │ 180.95 │
├────────────┼────────────┼────────────┼──────────┤
│ 74 │ W │ 鎢 │ 183.84 │
├────────────┼────────────┼────────────┼──────────┤
│ 75 │ Re │ 錸 │ 186.21 │
├────────────┼────────────┼────────────┼──────────┤
│ 76 │ Os │ 鋨 │ 190.23 │
├────────────┼────────────┼────────────┼──────────┤
│ 77 │ Ir │ 銥 │ 192.22 │
╘════════════╧════════════╧════════════╧══════════╛