在python中创建指定大小的多维数组方式

yipeiwu_com5年前Python基础

python中创建指定大小的二维数组,有点像C++中进行动态申请内存创建数组,不过相比较而言,python中更为简单一些。

创建n行m列的二维数组:

n = 2

m = 3

matrix = [None]*2

for i in range(len(matrix)):

matrix[i] = [0]*3

print(matrix)

当然也可以使用list comprehension的方式创建:

n = 2

m = 3

matrix = [[0]*m for i in range(n)]

print(matrix)

matrix[0][0] = 1

print(matrix)

对于创建三维甚至三维以上的数组,建议使用第一种方法,依次确定最高维、次高维以及最后一维,如果使用list comprehension会产生浅拷贝的问题。

n = 2

m = 3

k = 4

matrix = [None]*2

for i in range(len(matrix)):

matrix[i] = [0]*3

print(matrix)

 
for i in range(n):

for j in range(m):

matrix[i][j] = [1]*k

 
print(matrix)

以上这篇在python中创建指定大小的多维数组方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python监控进程脚本

本文实例为大家分享了python监控进程脚本的具体代码,供大家参考,具体内容如下 原理: 监控一个指定进程,每隔5秒钟获取其CPU、内存使用量超过60%即kill掉该进程,获取其句柄数,...

python类中super() 的使用解析

描述 super() 函数是用于调用父类(超类)的一个方法。 super 是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,但是如果使用多继承,会涉及到查找顺序...

Python多线程同步Lock、RLock、Semaphore、Event实例

Python多线程同步Lock、RLock、Semaphore、Event实例

一、多线程同步 由于CPython的python解释器在单线程模式下执行,所以导致python的多线程在很多的时候并不能很好地发挥多核cpu的资源。大部分情况都推荐使用多进程。 pyth...

浅谈Python使用Bottle来提供一个简单的web服务

介绍 今天有个不正经的需求,就是要快速做一个restful api的性能测试,要求测试在海量作业数据的情况下客户端分页获取所有作业的性能。因为只是一个小的的测试工作,所以就想到了Bott...

Python语法快速入门指南

Python语法快速入门指南

Python语言与Perl,C和Java等语言有许多相似之处。但是,也存在一些差异。 在本章中我们将来学习Python的基础语法,让你快速学会Python编程。 第一个Python程序...