【发布时间】:2020-09-11 03:07:09
【问题描述】:
打开文件
romeo.txt并逐行读取。对于每一行, 使用split()函数将该行拆分为单词列表。这 程序应该建立一个单词列表。对于每行检查的每个单词 查看单词是否已经在列表中,如果没有,则将其附加到 列表。程序完成后,排序并打印结果单词 按字母顺序排列。
http://www.pythonlearn.com/code/romeo.txt
这是我的代码:
fname = raw_input("Enter file name: ")
fh = open(fname)
for line in fh:
for word in line.split():
if word in line.split():
line.split().append(word)
if word not in line.split():
continue
print word
由于某种原因,它只返回最后一行的最后一个单词。
【问题讨论】:
-
你希望
line.split().append(word)做什么,究竟是什么? -
我测试了你的代码:它打印出每一行的每个单词,正如我所期望的那样。当您致电
line.split()时,您会期待什么?您希望哪个条件(“...中的单词”或“不在...中的单词”)是正确的? -
我误解了这个问题,还是说文件中的每一行,将行拆分为单词并检查结果列表中的每个单词是否在所述列表中?这不是多余的,因为它总是正确的吗?将单词添加到列表末尾的目的是什么?那不是两次上榜了吗?
标签: python python-2.7