iT邦幫忙

0

想請教一下,list1應該與list2相同,但為什麼輸出結果卻不同(已解決)

  • 分享至 

  • xImage
list1=[[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0],[0,0,0,0,0]]
list2=[[0]*5]*5
if list1==list2:
   print(1)
list1[0][0]=1
list2[0][0]=1
print(list1)
print(list2)

output:
1
[[1, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
[[1, 0, 0, 0, 0], [1, 0, 0, 0, 0], [1, 0, 0, 0, 0], [1, 0, 0, 0, 0], [1, 0, 0, 0, 0]]

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

3
黃彥儒
iT邦高手 1 級 ‧ 2022-09-25 17:11:46
最佳解答

不同好嗎…人家文件都特別說明新手容易犯錯了,用Python還不看說明,人家連中文都給你了,不認真欸/images/emoticon/emoticon36.gif
https://ithelp.ithome.com.tw/upload/images/20220925/20088395HcjqIFWeq4.png

深淺拷貝看一下,指標看一下,Pyhton雖然隱藏了指針的概念但還是有實做
Python == 的文件:https://docs.python.org/zh-cn/3.10/reference/expressions.html#value-comparisons

我要發表回答

立即登入回答