リストをパラメータとして取り出し、空白または数値のいずれかを削除する関数を作成しました。以下のコード:私はそうのようなリストを使用してそれをテストし変数の型を取得する方法
def cleaner(List, filter_out=' '):
if filter_out == ' ':
for i in List:
if i == ' ':
List.remove(' ')
if filter_out == 'int':
for i in List:
if type(i) == int:
List.remove(i)
:
myList = ['h' ' ', 'g', 1, 2, 3, 4, 5, 'p']
print(cleaner(myList, filter_out='int'))
私は['h' ' ', 'g', 'p']
ではなく、プリントアウト['h ', 'g', 2, 4, 'p']
なぜそれが1
と2
を残したのを取得するために期待?私はそれがリストのすべての数字を除外すると思った。
最初の最初のあなたが変数として組み込み型の名前を使用するか、パラメータはありません –
二つ目の二番目に、それをどれ –
を反復しながら、あなたはリストから削除しませんが、私は思いました私は 'type(i)'を書いています。組み込み型 'int 'と比較してください。 –