リストをフィルタリングしようとしています。ここにコードがあります。フィルタリング時に予期せぬ出力が出るPython list:どうしたのですか?
test=['aaa','bbb','ccc','ddd','footer','header']
def rm_hf(x): return x != 'footer'
filter(rm_hf,test)
結果:
>>>['aaa','bbb','ccc','ddd','header']
これは、リスト内の「フッター」を見つけて削除すると予想されます。
今、私は「ヘッダ」と「フッター」の両方を削除したいので、私はこれを行う:中
test2=['aaa','bbb','ccc','ddd','footer','header']
def rm_hf2(x): return x != 'footer' or x != 'header'
filter(rm_hf2,test2)
結果:
>>>['aaa','bbb','ccc','ddd','footer','header']
は今、それはそれは単に「フッターの両方を与え、奇妙な'、'ヘッダー 'をフィルタリングする代わりに使用しますか?
どうしたのですか?私の論理は正しいと思う...
と、いないか!!!!! –
-1: "奇妙な振る舞い"と "Pythonのバグ"と混同された単純な論理質問。それは常に論理です。 'rm_hf2'をテストするのはどれくらい難しいですか? –
まあ、私はちょうど質問をはっきりと尋ねました、あなたは私を訂正するのではなく、私を投票しました。私は笑いを止めることはできません。私は投票をどうにかしていますので、投票してください:) –