この質問にはすでに答えがあります:
id( ) 関数は何に使用されますか?
(13 件の回答)
3 年前
に閉店しました。
Pythonのリストに要素を追加すると、要素が末尾に追加されることはわかりました。リストの要素を出力しようとしたのですが、要素のアドレスがバラバラになっているのはなぜでしょうか?助けてください、ありがとう!
list = []
list.append(2)
list.append(10)
list.append(3)
print('--append--')
for i in list:
print('i:{}, id:{}'.format(i,id(i)))
出力は次のとおりです:
--append--
i:2, id:140711739437936
i:10, id:140711739438192
i:3, id:140711739437968
これであなたの質問は解決しましたか? Python で属性ごとにオブジェクトのリストのインデックスを取得します
– tbhaxor
2020 年 9 月 5 日、1:25
id() が何をするのか調べましたか? docs.python.org/3/library/functions.html#id
– ニラジ
2020 年 9 月 5 日 1:56
リスト内の要素のインデックスと ID は同じものではありません。
– ジーノ・メンピン
2020 年 9 月 5 日 2:03
------------------------
id() 関数は、指定されたオブジェクトの一意の ID を返します。
リストのインデックスを使用する必要があります
list = []
list.append(2)
list.append(10)
list.append(3)
print('--append--')
for i in list:
print('i:{}, id:{}'.format(i,list.index(i))) # replace id with list.index
3
答えを考えてみましょう!明確に説明できなかったかもしれません。 id() 関数は、メモリ内のオブジェクトのアドレスを返します。要素を追加すると、id の値が順番に増加するはずですが、メモリ アドレスではこれができないのはなぜですか。
– 小さなオレンジ色
2020 年 9 月 5 日 2:02
@small-orange このコンセプトがあなたの質問に答えてくれると思います
– tbhaxor
2020 年 9 月 5 日 2:35
あなたのことをとても大切に思っています。
– 小さなオレンジ色
2020 年 9 月 5 日 11:19
------------------------
id() はオブジェクトの ID (一意の整数) を返します...
a=3
print(id(3)) #9752224
これを使用できます
list = []
list.append(2)
list.append(10)
list.append(3)
print('--append--')
for i in enumerate(list): #enumerate return an enumerate object.if list it [(0,2),(1,10),(2,3)]
print('i:{}, id:{}'.format(i[1],i[0]))# for getting index number i[0]
1
わかりました、わかりました。あなたのことをとても大切に思っています
– 小さなオレンジ色
2020 年 9 月 5 日 11:19
------------------------
実際のプログラミングでは id 関数が使用されることはほとんどありません。通常、リストを扱うにはリスト インデックスを使用します。例は次のようになります:
mylist = []
mylist.append(2)
mylist.append(10)
mylist.append(3)
print(mylist)
出力:
[2,10, 3]
サンプルコード:
for x in range(len(mylist)):
print(x, mylist[x])
出力:
0, 2
1, 10
2, 3
Python Web ページにあるものなど、Web 上の優れた Python チュートリアルの 1 つを確認してください: https://docs.python.org/3/tutorial/
2020 年 9 月 5 日 6:17 に回答
エリック
エリック
301
3
銀バッジ 3 個
12 個
銅バッジ 12 個
1
わかりました、わかりました。あなたのことをとても大切に思っています。
– 小さなオレンジ色
2020 年 9 月 5 日 11:19