Re: [問題] List 的問題 x=[[0]*10]*10 ...
※ 引述《jgpnsgm (哼!)》之銘言:
: 想做一個10x10的array
: 在python裡是用list來實現吧?
: x=[[0]*10]*10
: print x
: 看起來好像是10x10的zero array沒錯..
: x[0][0]=12
: print x
: 想改變0,0的值卻發現*,0的值都變了...
: 看起來是我的list有問題的樣子,參考到同一位址
: 請問正確的方法是?
: 謝謝!
自問自答...
http://www.python.org/doc/faq/programming/
#how-do-i-create-a-multidimensional-list
*使用在primitive datatype以外似乎是複製參考(reference)
正確的方法是
A=[None]*3
for i in range(3):
A[i]=[0]*2
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.111.79.32
※ 編輯: jgpnsgm 來自: 140.111.79.32 (05/20 10:58)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章