1. ホーム
  2. python

[解決済み] 条件付きで割り当てが可能か?

2022-11-03 21:09:24

質問

条件の中で代入を行うことは可能ですか?

例えば

if (a=some_func()):
    # Use a

どのように解決するのですか?

試してみてはいかがでしょうか?

>>> def some_func():
...   return 2
... 
>>> if (a = some_func()):
  File "<stdin>", line 1
    if (a = some_func()):
          ^
SyntaxError: invalid syntax

だから、ダメなんです。

更新しました。 これは Python 3.8 で可能です(異なる構文で)。

if a := some_func():