多语言展示
当前在线:1581今日阅读:60今日分享:41

python由列表生成数组的方法

python是目前使用最广泛的编程语言,因为目前正处于大数据时代;而以人工智能、机器学习为代表的应用和技术需要python来辅助科学计算。python科学计数最主要的数据结构是数组,下面先看看python由列表怎么生成数组的
工具/原料
1

anaconda,spyder,python3

2

copy,deepcopy

方法/步骤
1

列表生成二维数组。生成一个长度为6的列表v1,3个列表v1组成了3*6的二维数组v2(其实就是v2嵌套3个相同的列表)v1,如图所示

2

二维数组的取数。v2[1]表示二维数组第二行的数据;v2[1][1]表示二维数组第二行第二列的数据;如图所示

3

构建三维数组、三维数组的取数。v3=[v2,v2]表示2个二维数组组成了一个2*3*6的三维数组;v3[1]表示第2个二维数组;v3[1][1]表示第2个二维数组的第2行;v3[1][1][1]表示第2个二维数组的第2行第2列;如图所示

4

修改列表元素对数组的影响。v1[0]='ok'表示将列表v1的第一个元素修改为‘ok’,我们发现二维数组v2、三维数组v3的相应元素都发生了变化,如图所示

5

用deepcopy实现修改列表元素不影响数组(step1)。from copy import deepcopy表示将copy库的包deepcopy加载一下,v1=[1,3,5,7,9,6]表示恢复原列表,v2=[deepcopy(v1)]*3表示将列表嵌套并深copy后的列表生成二维数组v2,v3=[[deepcopy(v1)]*3]*2表示将列表嵌套深copy后的二维数组后生成三维数组;

6

用deepcopy实现修改列表元素不影响数组(step2).v1[0]='ok'修改列表第一个元素为‘ok’,观察v1,v2,v3的变化情况:此时二维数组v2、三维数组v3的元素并未发生变化;如图所示

注意事项
1

列表的嵌套就形成了数组,嵌套的列表长度一定要相等

2

用deepcopy避免了修改列表元素会对多维数组(由列表组成的)的影响

3

数组取行、取单个元素用下标索引即可;但是取某一列不太容易

推荐信息