我正在学习python,并尝试使用web.py创建一个自己使用的电影集合。蟒蛇 - 比较两个列表
我有两个列表
movies_all = ["abc","xyz","opq"]
movies_watched = ["xyz","pqr","cba"]
我想要做的是打印最终输出movies_all的所有行。 这样,如果在列表movies_watched中存在匹配,则输出是或否。例如,在上面只有“xyz”是常见的。
优选地,输出应该是单个数据类型,例如“列表列表”或字典或元组列表等。 其目的是在如下所示的html表格中显示输出。
输出:
================ Movies| Watched | ------|---------| abc |No | xyz |Yes | opq |No |
表输出仅用于提高可读性,实际上是不需要的。
我都试过,但通过迭代一个列表
matches=[]
print "start comparing"
for item_a in movies_all:
for item_b in movies_watched:
if item_a == item_b:
matches.append(item_a)
matches.append("Yes")
#result=zip(movies_all,matches) -> Tried this but not getting desired output
for i in range(4):
print("%s, %s" % (movies_all[i],matches))
你应该发布自己的编码尝试,否则你的问题会吸引downvotes。提示:要有效地做到这一点,'movies_watched'应该是'set'。 –
使用某人发布的答案,然后执行:将pandas导入为pd,d = {'movies':movies},df = pd.DataFrame(data = d) – sera
@ PM2Ring感谢您通知我,我的第一篇文章中添加了我的代码失败 – Bharat