【发布时间】:2014-05-09 15:48:55
【问题描述】:
我从 imdb 下载了一个包含电影类型的大文件。文件太大了,如果我尝试从文件中打印所有内容,我的超级计算机就会崩溃。
嗯,我需要为一些电影制作一些流派。为此,我在 python 中创建了一个名为 movie 的列表。
此列表包含同一字符串中的电影名称,包括年份。您可以在此处查看示例。
['The Shawshank Redemption (1994)\n',
'The Godfather (1972)\n',
'The Godfather: Part II (1974)\n',
'The Dark Knight (2008)\n',
'Pulp Fiction (1994)\n',
好吧,我必须为大文件中的每一行创建一些 for 循环,它应该检查其中一个电影名称是否出现在我的电影列表中,如果出现,它也应该将它附加到一个名为 Genrelist 的新列表中。
所以结果将是一个包含电影名称的新列表,包括他们的流派;)
到目前为止,我尝试过:
filegenre = open("GenreMod.list", "r")
lines = filegenre.readlines()
for line in lines:
for item in names:
if item in line:
genrelist.append(line)
print genrelist
但在这里它只会在列表名称中找到姓氏。因此,假设它使用我粘贴的示例进行搜索,我只会找到包含 --> 'Pulp Fiction (1994) 的所有内容,而不是其余内容?
我是不是做了一些错误代码或`?
【问题讨论】:
-
你的电影名字后面有\n吗?
-
您能否提供更多信息-
GenreMod.list的内容是什么?names是电影列表(您之前称为movie)吗?你想要什么确切的输出? -
尝试在大文件中使用
xreadlines而不是readlines!
标签: python list file python-2.7