だから、私はPythonのリストから非整数を取り除くことを面倒していました(非常にエキサイティングなもの)。私は、リスト内のすべての非整数の項目を削除しようとしているが、上記のコードはFalseを削除しませんisinstanceでリストからfalseを取り除くときの問題
list_a = ["a", 1, 2, 3, False, [1, 2, 3]]
for item in list_a:
if not isinstance(item, int):
list_a.remove(item)
:私は解決することができないよう、次のコードで問題に出くわしました。私が欲しいもの
:[1, 2, 3, False]
をこのアウトを考え出すすべてのヘルプははるかに高く評価されるだろう:私は取得しています何[1, 2, 3]
!
>>> isinstance(True, int)
True
>>> isinstance(True, bool)
True
これは、あなたがより洗練されたチェックが必要であることを意味します:Pythonで
http://pythontutor.com –
Falseは値で、0です(整数)。 – Li357
'False'は内部的には整数の0として表されます。実際、' False == 0'は 'True'ですが、' False is 0'はありません。 'False'を削除するには、演算子' is'を使用します。 – DyZ