SyntaxError を修正: Python で関数呼び出しに代入できません
この記事では、Python の SyntaxError: can't assign to function call
エラーを修正する方法について説明します。
Python の構文エラー
コンピューター プログラミングの構文は、開発者がコードのバグを回避するために効率的に従わなければならない文法または適切な記述構造です。 従わなければならない命名規則とループと条件の定義された構造があるように。 そうしないと、コードは実行されません。
プログラミング言語の規則と規制に従って、適切にコーディングし、バグを回避することが必須です。 例を通してそれを理解しましょう。
for x in range(1, 6): # this will print 1,2,3,4,5
print(x, end=" ")
出力:
1 2 3 4 5
上記のプログラムは、Python での for
ループの適切な定義を示しています。 Python で定義されていない方法で for
ループを記述すると、構文エラーがスローされます。
for in x range(1, 6): # this will print 1,2,3,4,5
print(x, end=" ")
出力:
SyntaxError: invalid syntax
上記の for
ループで in
と x
の位置を変更したところです。 Python コンパイラはこの構文をサポートしていないため、構文エラーがスローされました。
これが、定義された構文に従うことが必須である理由です。 そうしないと、Python コンパイラが構文エラーをスローします。
Python の SyntaxError: can't assign to function call
を修正
Python では、変数または値を関数に代入しようとすると、関数呼び出しに代入できません
エラーが発生します。これは許可されていないか、Python の構文に反します。 関数を変数に割り当てることはできますが、変数を関数に割り当てることはできません。
例を通してそれを理解しましょう。
"Delft Stack" = name
出力:
SyntaxError: can't assign to literal
上記のステートメントは Python では無効です。 変数を文字列に割り当てることはできませんが、その逆は可能です。
name = "Delft Stack"
print(name)
出力:
Delft Stack
これは Python で受け入れられる正しい構文であるため、エラーを引き起こすことなく実行されます。 同様に、関数に変数を割り当てることはできませんが、その逆は可能です。
例を通してそれを理解しましょう。
class Greetings:
def hi(self):
return "Hey! How are you?"
Delft = Greetings()
Delft.ftn() = x # This statement is invalid
print(x)
出力:
SyntaxError: can't assign to function call
上記のプログラムでは、構文が正しくないため、ステートメント Delft.ftn() = x
は Python コンパイラでサポートされていません。 そのため、構文エラーがスローされました。 この Delft.ftn() = x
ステートメントの割り当て順序を変更して、構文エラーを修正しましょう。
Python のエラー can't assign to function call
を修正しましょう。
class Greetings:
def hi(self):
return "Hey! How are you?"
Delft = Greetings()
x = Delft.hi()
print(x)
出力:
Hey! How are you?
ご覧のとおり、このプログラムはエラーを発生させることなく実行されます。 このステートメント x = Delft.hi()
は適切な順序になりました。 Python の定義された構文に従います。
Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.
LinkedIn関連記事 - Python Error
- AttributeError の解決: 'list' オブジェクト属性 'append' は読み取り専用です
- AttributeError の解決: Python で 'Nonetype' オブジェクトに属性 'Group' がありません
- AttributeError: 'generator' オブジェクトに Python の 'next' 属性がありません
- AttributeError: 'numpy.ndarray' オブジェクトに Python の 'Append' 属性がありません
- AttributeError: Int オブジェクトに属性がありません
- AttributeError: Python で 'Dict' オブジェクトに属性 'Append' がありません