如果你可以改变你的表成大熊猫的数据帧(例如,使用pandas.read_csv),那么这将做的工作:
import pandas as pd
df=pd.DataFrame({'a':[1,2,3,4,5,6],'b':['a','b','c','d','e','f'],'val':['critical','high','low','medium','critical','low']})
df['val'] = pd.Categorical(df['val'],['critical','high','medium','low'])
df.sort_values(by='val',inplace=True)
然后在开始df
是
a b val
0 1 a critical
1 2 b high
2 3 c low
3 4 d medium
4 5 e critical
5 6 f low
并且最后df
是
a b val
0 1 a critical
4 5 e critical
1 2 b high
3 4 d medium
2 3 c low
5 6 f low
I上述N的代码,即指定的顺序线是使用IntEnum
对于字典的列表
df['val'] = pd.Categorical(df['val'],['critical','high','medium','low'])
如何[枚举](https://docs.python.org/3/library/enum.html)?更具体地说,[IntEnum](https://docs.python.org/3/library/enum.html#intenum)。 –
我们可以假设您知道如何将数据读入列表并将排序后的列表数据写回到文件中?你应该发布[mcve],表明你试图解决这个问题。你想要一个纯粹的Python解决方案吗?或者你想使用熊猫? –