python中的数据排序

  python中对于抓取的数据进行排序:

def checkstr(mystr):
    try:
        num=eval(mystr)
        return True
    except:
        return False

filepath=r'D:\python爬虫视频\爬虫代码\处理爬虫数据排序\nasa.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("\t")   #通过查看二进制,得到换行为 \t   可通过split切割为列表
    if len(linelist)>19:   #筛选数据   通过查看txt文本,数一下 一行的数据为20个字符
        if checkstr(linelist[3]):
            print(linelist)
            mynewlist.append(linelist)  #存储列表,每一个元素都是列表

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

savefile=open("chenming.txt","w")
for data in mynewlist:
    print(data)
    savefile.write(str(data)+"\r\n")
savefile.close

 

posted on 2020-03-09 11:09  共感的艺术  阅读(398)  评论(0)    收藏  举报