我的程序旨在打印那些看过最多'推文的热门 n 用户。他们会看到多少。一条看到的推文被定义为来自他们关注的用户的推文,当他们在推文,DM中被提及(@user)或作为转推的推文的作者时。
使用虚拟文件(follows.txt):
andrew fred
fred
judy andrew fred
george judy andrew
john george
第一个单词是用户,其中字符串中的其余单词是他们关注的人
用于确定每个用户关注对象的代码片段:
for line in lines:
names = line.split()
follow_dict[names[0]] = len(names)-1
if max_follower < len(names)-1:
max_follower = len(names)-1
使用第二个虚拟文件(stream.txt)显示常规活动:
andrew I hate mondays.
fred Python is cool.
fred Ko Ko Bop Ko Ko Bop Ko Ko Bop for ever
andrew @fred no it isn't, what do you think @john???
judy @fred enough with the k-pop
judy RT @fred Python is cool.
andrew RT @judy @fred enough with the k pop
george RT @fred Python is cool.
andrew DM @john Oops
john DM @andrew Who are you go away! Do you know him, @judy?
代码的示例输出应该是:
Enter n: 10
6 judy
5 fred george
3 andrew john
通常,如果我在这里寻求帮助,我至少会有一些代码来表明它是有效的,但不是完全按照预期或有错误。这次我甚至都不知道从哪里开始。如果有人可以帮助我,我将非常感激。
答案 0 :(得分:1)
我认为你可以通过这种方式解决问题(从每个用户那里开始计算他们看到的推文),但效率太低(这可能不是推特的做法)。这是另一种方式: