import pandas as pd
import numpy as np
dic={
'名次': range(1, 6),
'姓名': ['赵云', '关羽', '张飞', '黄忠', '马超'],
'语文':np.random.randint(50,100,5),
'数学': np.random.randint(50, 100, 5),
'英语': np.random.randint(50, 100, 5),
'物理': np.random.randint(50, 100, 5),
'化学': np.random.randint(50, 100, 5)
}
df = pd.DataFrame(dic).set_index('名次')
df['总分']=df.iloc[:,1:].sum(axis=1)
df['均分'] = df.iloc[:,1:].mean(axis=1)
df=df.sort_values(by='均分',ascending=False).reset_index(drop=True)
print(df)