文字替换成函数返回数字进行排序

  文字替换成函数返回数字进行排序:

def xueli(study):
    if study == "博士后":
        return 10
    elif study == "博士":
        return 9
    elif study == "硕士":
        return 8
    elif study == "本科":
        return 7
    elif study == "大专":
        return 6
    elif study == "高中":
        return 5
    elif study == "中专":
        return 4
    elif study == "初中":
        return 3
    elif study == "小学":
        return 2
    elif study == "幼儿园":
        return 1
    else:
        return 0






filepath=r'D:python爬虫视频爬虫代码处理爬虫数据排序
asa.txt'
readfile=open(filepath,"rb")
#textfile=readfile.decode("gbk","ignore")
mydatalist=readfile.readlines()
mynewlist=[]
for line in mydatalist:
    line=line.decode("gbk",errors="ignore")
    linelist=line.split("	")   #通过查看二进制,得到换行为 	   可通过split切割为列表
    if len(linelist)>19:   #筛选数据   通过查看txt文本,数一下 一行的数据为20个字符
            mynewlist.append(linelist)  #存储列表,每一个元素都是列表

readfile.close()
mynewlist.sort(key=lambda x:xueli(x[5]))  #根据第三个排序,转化为整数
mynewlist.reverse() #反转

savefile=open("youqiang.txt","w")
for data in mynewlist:
    print(data)
    savefile.write(str(data)+"
")
savefile.close
原文地址:https://www.cnblogs.com/my-global/p/12447430.html