python 對二維陣列賦值問題

2021-10-07 11:06:10 字數 618 閱讀 5171

通過以下方式,定義的二維list,當改變乙個元素值時,會發現所有行中對應位置的值都被改變

# 定義乙個3*4的二維list

d_list =[[

'0']*4

]*3# 注意行和列對應位置

print

(d_list)

# 改變乙個元素時

d_list[2]

[1]=

'w'print

(d_list)

這是因為當時定義的時候d_list的3行是同乙個[『0』]*4的索引,所以乙個被改變,其他的都被改變。

所以保險的初始化如下:

d_list =

for i in

range(0

,3):

tmp =

for j in

range(0

,4):

'0')

或者使用深拷貝來實現

import copy

d_list =

a =[

'0']*4

for i in

range(3

):)

VBA陣列賦值(2 2) 二維陣列

借助工作表為二維陣列賦值就非常簡單直接了,示例 如下。sub demo4 dim myarray myarray range a1 c3 stop endsub 如願以償的生成了3x3的二維陣列。如果陣列中的資料是在 中生成的,也不是必須要借助工作表單元格,才能實現為二維資料賦值,很多時候從 執行效...

python建立二維陣列問題

一次偶然的機會,發現python中list非常有意思。先看一段 py array 0,0,0 matrix array 3 print matrix 0,0,0,0,0,0,0,0,0 py 這段 其實沒有新建乙個二維陣列 再看一段 py array 0,0,0 matrix array 3 pri...

c 二維陣列賦值及二維指標使用

include void main int tmp 2 test printf value d n tmp 0 printf value d n tmp 0 printf value d n tmp 1 printf value d n tmp 1 printf value d n tmp 0 1 ...