1. ホーム
  2. python

[解決済み] Pythonのダブルイコールとis [重複] [重複

2023-01-22 15:19:16

質問

Pythonのインタープリターで以下を実行しています。

>>> foo = 10
>>> dir(foo) == dir(10)
True
>>> dir(foo) is dir(10)
False
>>> 

これはなぜでしょうか?

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

is は、2つの引数が同じオブジェクトを参照しているかどうかをチェックします。 == は2つの引数が同じ値を持つことをチェックします。 dir()list の両方について同じデータを含む foo10 が、実際の list のインスタンスは異なります。