Python 出力される要素のリストが不連続である

okwaves2024-01-25  10

この質問にはすでに答えがあります: 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

総合生活情報サイト - OKWAVES
総合生活情報サイト - OKWAVES
生活総合情報サイトokwaves(オールアバウト)。その道のプロ(専門家)が、日常生活をより豊かに快適にするノウハウから業界の最新動向、読み物コラムまで、多彩なコンテンツを発信。