python生成多维数组方法总结(多维创建有问题的情况)

1、一维

list1=[0]*5               #[0,0,0,0,0]
list2=np.arange(5)        #[0,1,2,3,4]

2、二维(注意)

list2=[[0]*3]*2      这种创建是有问题的!!

print(list2)
list2[0][0]=1
print(list2)

在这里插入图片描述
正确的方式:

list3=[[0]*3 for _ in range(2)]
或者
list3=[[0 for j in range(3)] for _ in range(2)]
或者
a=[0]*3
list3=[a.copy for _ in range(2)]

3、多维

用二维的方法创建就行

[[[0 for j in range(3)] for _ in range(2)] for k in range(4)] ......

4、numpy创建数组

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
list4=np.arange(1,10,2)
list51=np.array([[1,0],[0,1]])
list52=np.array([np.arange(3),np.arange(3)])
list53=np.array((np.arange(3),np.arange(3)))
list6=np.linspace(1,10,10,endpoint=True)    #等差数列
list7=np.zeros((10,10))
list8=np.ones((5,5))
list9=np.empty((3,3))

在这里插入图片描述
在这里插入图片描述

posted @ 2022-10-07 20:32  I'm_江河湖海  阅读(11)  评论(0)    收藏  举报