"Can't assign to function call" if 语句中的错误



我正在尝试制作一个程序,该程序需要一段话,然后显示字数,单词的平均长度以及每个单词出现的次数。然而,在尝试实现它发现每个单词出现多少次的部分时,发生了错误:"无法分配给函数调用"我看了其他问题,这个问题被问到,但我无法适应它。错误发生在"word_amount(单词位置(+= 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)

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

最新更新