【问题标题】:Append statement usage (with written and debug image attached)附加语句用法(附有书面和调试图像)
【发布时间】:2016-01-01 12:24:26
【问题描述】:

问题:打开文件 week.txt 并逐行读取。对于每一行,使用 split() 函数将该行拆分为单词列表。该程序应该建立一个单词列表。对于每行上的每个单词,检查该单词是否已经在列表中,如果没有,则将其附加到列表中。程序完成后,按字母顺序对生成的单词进行排序和打印。 您可以在http://www.pythonlearn.com/code/romeo.txt下载示例数据

week4.txt的文件是我从网站上下载的(remeo.txt),命名为week4.txt

fh = open(fname)
wordlist = []
x = 0
for line in fh:
    line = line.rstrip()
    words = line.split()
    wordsnum = len(words)
    while x < wordsnum:
        if x-1<1:
            firstword = words[x]
            wordlist = wordlist.append(firstword)
            x = x+1
            continue
        newword = words[x];
        if newword == words[x-1]:continue
        wordlist = wordlist.append(newword)
        x = x+1
wordlist = wordlist.sort()
print wordlist

我遇到了 append 语句的问题。你能帮我解决这个问题吗?非常感谢!

【问题讨论】:

标签: append


【解决方案1】:

我的代码的问题是我使用了

wordlist = wordlist.append(newword)

事实上 append 是一个函数,我不能使用等号。

因此,正确的代码应该是

fname = raw_input('Enter file name: ')
if len(fname) == 0:
    fname = 'week4.txt'

fh = open(fname)
lst = list()
x = 0
for line in fh:
    words = line.strip().split()
    wordsnum = len(words)
    while x < wordsnum:
        if x-1<1:
            lst.append(words[x])
            x = x+1
            continue
        if words[x] == words[x-1]:continue
        lst.append(words[x])
        x = x+1
lst.sort()
print lst

【讨论】:

    猜你喜欢
    • 2011-10-22
    • 1970-01-01
    • 2013-04-26
    • 2011-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-27
    • 2011-07-10
    相关资源
    最近更新 更多