词提取多行文本文件

时间:2016-07-26 19:38:30

标签: python-2.7

  

在这里,我创建了一个代码:从文本文件中提取单个单词,仅将没有重复的单词附加到空白列表中,然后按字母顺序对它们进行排序。

fname = raw_input("Enter file name: ")
fhandle = open(fname)
wordlist = list()
counter = 0

for line in fhandle:
line = line.split()
length = len(line)
if line not in wordlist:
    wordlist.append(line[counter])
    counter += 1
    if counter == length:
        break
print wordlist.sort()
  

在Pycharm中检查此结果仍会给出结果“无”,尽管查看实时执行会显示按字母顺序排列的单词排序但单词重复的单词(参见图)。我很想解读文件1和变量2之间的差异。

2 个答案:

答案 0 :(得分:1)

  

首先用一个for循环分割行,然后用另一个for循环将行分割成单词是我最终提出的解决方案:D

askfile = raw_input('Enter file name :')
filehandle = open(askfile)
wordlist = list()

for line in filehandle:
    line = line.split()
    for word in line:
        if word not in wordlist:
            wordlist.append(word)
            continue
wordlist.sort()
print wordlist
  

现在这是一个简短的简单代码:D

答案 1 :(得分:0)

  

sort()和reverse()方法在排序或反转大型列表时修改列表以便经济空间。为了提醒您它们是由副作用操作的,它们不会返回已排序或反转的列表。

你想要的是:

wordlist.sort()
print wordlist