import pandas as pd data={'seqno':['1.1','1.2','1.15','1.1.1','1.1.2','1.1.3','1.1.1.1','1.1.2.1']} dt=pd.DataFrame(data) dt2=dt['seqno'].str.split(r'.',expand=True) #分列 dt2=dt2.astype('float') #转成数字型 dt=pd.concat([dt,dt2],axis=1) #合并 dt=dt.sort_values(by=[0,1,2,3],na_position='first') #排序 dt=dt['seqno'] #返回 >>> dt 0 1.1 3 1.1.1 6 1.1.1.1 4 1.1.2 7 1.1.2.1 5 1.1.3 1 1.2 2 1.15
import pandas as pd data={'seqno':['1.1','1.2','1.1.1','1.1.2','1.1.3','1.1.1.1','1.1.2.1']} dt=pd.DataFrame(data) dt.sort_values("seqno") 排序后就只这样,有什么满足不了你要求 seqno 0 1.1 2 1.1.1 5 1.1.1.1 3 1.1.2 6 1.1.2.1 4 1.1.3 1 1.2
37,719
社区成员
34,239
社区内容
加载中
试试用AI创作助手写篇文章吧