Pythonでリストを初期化したい。以下のコードが機能しない理由がわかりません。
u = ['abc', 'de', 'fghi', 'jklm', 'n', '']
for item in u:
item = len(item)
次のように、リストを初期化する他の方法があります。
u = [len(item) for item in u]
しかし、私の質問は、最初のコードが機能しない理由です。
編集:私はPythonとプログラミングの初心者です。残念ながら、あなたの回答の一部が理解できません。例:
- "名前を名前の長さに再バインドする"の再バインドitem
item
- "item" のイテレータは、 (暗黙の) イテレータが指している場所に基づいてa の要素を指す一時変数ですu
。 2 番目の例では、メモリ内に を作成し、の値をにnew_list
代入します。以前の値が何であったかは関係ありません。しかし、最初のリストで値を変更する方法を知りたいです。ありがとうnew_list
u