【问题标题】:"Can't assign to function call" error in if statementif 语句中的“无法分配给函数调用”错误
【发布时间】:2018-03-19 11:34:06
【问题描述】:

我正在尝试制作一个程序,该程序需要一个段落,然后显示字数、单词的平均长度以及每个单词出现的次数。然而,在尝试实现它发现每个单词出现多少次的部分时,发生了错误:“无法分配给函数调用”我已经查看了其他问题,但我无法适应它。错误发生在“word_amount(wordposition) += 1”这一行。

passage = "this is a test to test this program"
words = passage.split()
wordcount = len(words)
print(passage)
print("Number of words:",wordcount)
wordlength = list(map(len, words))
avwordlength = (sum(wordlength))/wordcount
print("Average word length:",avwordlength)
checked_words = []
word_amount = []
for x in range(wordcount):
        currentword = words(x)
        if currentword in checked_words:
                wordposition = checked_words.index(currentword)
                word_amount(wordposition) += 1
        else:
                checked_words.append(currentword)
                word_amount.append(1)
print(checked_words)
print(word_amount)

【问题讨论】:

标签: python python-3.x


【解决方案1】:

圆括号用于函数,这就是错误告诉您它试图将单词数量解释为函数的原因。您需要使用方括号,对于上面列出的三行单词也是如此

【讨论】:

    猜你喜欢
    • 2015-03-27
    • 2021-02-02
    • 2016-10-22
    • 2015-02-28
    • 1970-01-01
    • 2019-05-24
    • 2015-04-23
    • 1970-01-01
    • 2011-09-22
    相关资源
    最近更新 更多