我有一个twitter日志数据,我必须对文件进行排序,以显示 每个用户转推的推文排名。Python:对文件进行排序
这是代码。
import codecs
with codecs.open('hoge_qdata.tsv','r', 'utf-8') as tweets:
tweet_list = tweets.readlines()
tweet_list.pop(0)
facul={}
for t in tweet_list:
t=t.split('\t')
if not t[0] in facul:
facul[t[0]]=[]
facul[t[0]].append(t)
t[-2]= int(t[-2])
def cmp_retweet(a,b):
if a[-2]<b[-2]:
return 1
if a[-2]>b[-2]:
return -1
return 0
for f in sorted(facul.keys()):
facul[f].sort(cmp = cmp_retweet)
print ('[%s]' %(f))
for t in facul[f][:5]:
print ('%d:%s:%s' %(t[-2], t[2], t[-1].strip()))
我几乎得到了正确的答案,但我必须让这个不会 显示未转推鸣叫..
这就是答案我应该得到(这仅仅是一个部分我有一个麻烦):
[jin_nkzw]
325:46936947935035392:RT @shimshamshimmy: SFCの学生と教職員の方へ、安否確認に協力してください。SFC-SFSで伝えてください。 https://vu8.sfc.keio.ac.jp/sfc-sfs/
,但是这是我得到的...
[jin_nkzw]
325:46936947935035392:RT @shimshamshimmy: SFCの学生と教職員の方へ、安否確認に協力してください。SFC-SFSで伝えてください。 https://vu8.sfc.keio.ac.jp/sfc-sfs/
0:8356641661:麹町のNICTで会議。ビルの目の前に、今朝のテレビでやってた「ふゆざくら」が咲いていた。
0:4979124091:@sfc_orf リンゴの木は会場俯瞰図(断面)からタッチパネルが生えているということで、「断面の触覚」という名前が浮かびました。「断面の触感」と言葉が近すぎて誤植と思われますかね〜
0:11422290558:いまになって、@who_meさんをフォローしていなかったことに気づく
0:7940726154:秋葉原で1000円程度で手配できるおいしいお弁当といったら何でしょう?
的格式是.. 转推的次数:编号:内容
我无法计算出如何抹掉这些推文。
你就不能检查,如果'T [ -2] == 0'打印之前? – mgilson