このコードが実行されたときに実際に起こること:
_text = "Word1anotherword23nextone456lastone333"
numbers = [x for x in text if x.isdigit()]
print(numbers)
_
_[]
_はリストを作成し、.isdigit()
は文字列(テキスト)の要素が数値である場合にTrueまたはFalseをチェックすることを理解しています。しかし、他のステップ、特に:「ループ」の前にある「x」は何をするのかわかりません。
出力が何であるかは知っていますが(下)、どのように行われますか
_Output: ['1', '2', '3', '4', '5', '6', '3', '3', '3']
_
これは単なる標準ですPythonリスト内包。これはforループをより長く書く別の方法です。文字列のすべての文字をループして、文字が桁。
リストの理解に関する詳細は this をご覧ください。