3

Pythonでは、関数を定義するために次のことをしようとしています:

count_letters(word) = count_vowels(word) + count_consonants(word)

しかし、何らかの理由で、それは間違っています。次のエラーが表示されます。

SyntaxError: can't assign to function call

どうすれば修正できますか?

ありがとうございました

4

6 に答える 6

5

これは、Python で関数を宣言する方法ではありません。書きたいことは次のとおりです。

def count_letters(word):
    return count_vowels(word) + count_consonants(word)

それは、すでにcount_vowelscount_consonants関数がある場合です。

于 2012-10-04T08:08:14.093 に答える
4

関数呼び出しの結果はcount_letters(word)代入できません。それはそれと同じくらい簡単です。

ただし、Pythonで機能するとは思いません。次のようなエラーが発生するはずです。

SyntaxError: can't assign to function call
于 2012-10-04T08:01:49.773 に答える
3

適切な関数定義に置き換える必要があります。

def count_letters(word):
    return count_vowels(word) + count_consonants(word)

使用しようとしている構文は有効な Python ではありません。

于 2012-10-04T08:07:45.373 に答える
2

あなたがやりたいことは次のようなものかもしれません

def count_letters(word):
    return count_vowels(word) + count_consonants(word)
于 2012-10-04T08:08:13.390 に答える
1

私が正しく収集した場合、あなたは関数を作成しようとしています。ただし、現在使用している構文は有効な構文ではありません。Pythonにとっては、関数呼び出し()に値を割り当てようとしているように見えますがcount_letters(word)、これはPythonでは許可されていません。count_letters = count_vowels(word) + count_consonants(word)動作しますが、あなたが望むものではありません。

関数を宣言するためにすべきことは次のとおりです。

def count_letters(word):
    return count_vowels(word) + count_consonants(word)
于 2012-10-04T08:09:38.413 に答える