python 申请内存空间,用于创建多维数组的实例
以三维数组为例
先申请1个一维数组空间:
mat = [None]*d1
d1是第一维的长度。
再把mat中每个元素扩展为第二维的长度:
for i in range(len(mat)): mat[i][j] = [None]*d2
类似的,把mat中每个元素扩展为第三维的大小:
for i in range(len(mat)): for j in range(len(mat[0]): mat[i][j] = [None]*d3
以上是创建的“数组”其实是list类,不是严格意义的数组。
用numpy array创建2*3*4数组:
原始方法
先创建含2个元素(第一维)的一维数组,把3*4数组塞进这2个元素的位置。
x = np.array([ [3*4数组] , [3*4数组] ])
类似的,
x = np.array([ [ [4个元素的一维数组], [4个元素的一维数组], [4个元素的一维数组] ] , [ [4个元素的一维数组], [4个元素的一维数组], [4个元素的一维数组] ] ])
用其他函数
np.zeros((2,3,4)) #参数为一个元祖(2,3,4) np.zeros_like( anotherArray ) #创建与anotherArray 同维度的数组,不复制anotherArray 的元素,以0填充.
类似的还有
np.ones, np.ones_like
np.empty, np.empty_like
np.eye(n)
以上这篇python 申请内存空间,用于创建多维数组的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
在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
-
Python中创建二维数组
二维数组 二维数组本质上是以数组作为数组元素的数组,即"数组的数组",类型说明符 数组名[常量表达式][常量表达式].二维数组又称为矩阵,行列数相等的矩阵称为方阵.对称矩阵a[i][j] = a[j][i],对角矩阵:n阶方阵主对角线外都是零元素. Python中创建二维数组 Python中的列表list可以当做一维数组使用,但是没有直接的定义使用二维数组.如果直接使用a = [][]会产生SyntaxError: invalid syntax语法不正确错误. 一般Python中创建二
-
Python使用numpy模块创建数组操作示例
本文实例讲述了Python使用numpy模块创建数组操作.分享给大家供大家参考,具体如下: 创建数组 创建ndarray 创建数组最简单的方法就是使用array函数.它接收一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的Numpy数组. array函数创建数组 import numpy as np ndarray1 = np.array([1, 2, 3, 4]) ndarray2 = np.array(list('abcdefg')) ndarray3 = np.array([
-
python创建关联数组(字典)的方法
本文实例讲述了python创建关联数组(字典)的方法.分享给大家供大家参考.具体分析如下: 关联数组在python中叫字典,非常有用,下面是定义字典的两种方法 # Dictionary with quoted or variable keys d1 = {"name":"donuts","type":"chocolate","quantity":10} # Dictionary with fixed key
-
python创建n行m列数组示例
我就废话不多说了,直接上代码吧! >>> matrix=[None]*2 >>> print(matrix) [None, None] >>> for i in range(len(matrix)): matrix[i ]=[0]*3 >>> print(matrix) [[0, 0, 0], [0, 0, 0]] >>> 例 n = 2 m = 3 matrix = [None]*2 for i in range(
-
Python创建二维数组实例(关于list的一个小坑)
0.目录 1.遇到的问题 2.创建二维数组的办法 •3.1 直接创建法 •3.2 列表生成式法 •3.3 使用模块numpy创建 1.遇到的问题 今天写Python代码的时候遇到了一个大坑,差点就耽误我交作业了... 问题是这样的,我需要创建一个二维数组,如下: m = n = 3 test = [[0] * m] * n print("test =", test) 输出结果如下: test = [[0, 0, 0], [0, 0, 0], [0, 0, 0]] 是不是看起来没有一点问
-
python 申请内存空间,用于创建多维数组的实例
以三维数组为例 先申请1个一维数组空间: mat = [None]*d1 d1是第一维的长度. 再把mat中每个元素扩展为第二维的长度: for i in range(len(mat)): mat[i][j] = [None]*d2 类似的,把mat中每个元素扩展为第三维的大小: for i in range(len(mat)): for j in range(len(mat[0]): mat[i][j] = [None]*d3 以上是创建的"数组"其实是list类,不是严格意义的数组
-
Python创建二维数组与初始化的实践举例
目录 一.Python用什么表达二维数组 二.如何初始化一个二维数组 2.1 利用list自身进行构造 2.2 利用传统的list的append方法,通过迭代构造 2.3利用numpy包构建二维数组(矩阵) 三.操作二维数组 一.Python用什么表达二维数组 严格意义上说,Python中并没有数组的概念,Python中表达一组数据有多种形式,例如list,tuple,set等数据结构都可以表达一组数,并且这组数也没有C和C++中数组的的同质限制,这些数可以是任何一种数据类型. 以list为例(
-
C++中用new创建二维数组和指针数组实例代码
使用new 创建二维数组方法 #include <iostream> using namespace std; void main() { //用new创建一个二维数组,有两种方法,是等价的 //一: int (*p)[10] = new int[5][10]; //二: int **p = new int* [5]; for(int i=0;i <5;i++) p[i] = new int[10]; //指针数组的创建,也有两种方法 //一: char **pa = new char*
-
Python之ReportLab绘制条形码和二维码的实例
条形码和二维码 #引入所需要的基本包 from reportlab.pdfgen import canvas from reportlab.graphics.barcode import code39, code128, code93 from reportlab.graphics.barcode import eanbc, qr, usps from reportlab.graphics.shapes import Drawing from reportlab.lib.units import
-
python中字符串变二维数组的实例讲解
有一道算法题题目的意思是在二维数组里找到一个峰值.要求复杂度为n. 解题思路是找田字(四边和中间横竖两行)中最大值,用分治法递归下一个象限的田字. 在用python定义一个二维数组时可以有list和numpy.array两种方式,看了几篇python中二维数组的建立的博客发现大多都是建立的初始化的二维数组,而我需要通过文件读取得到的是字符串,再把字符串转换为二维数组,找不到解决方法还是决定自己来转换. 首先,最开始的字符串输出如下,数字之间有空格 思路就是把先按换行符进行切片,再对每一行的字符再
-
python+numpy按行求一个二维数组的最大值方法
问题描述: 给定一个二维数组,求每一行的最大值 返回一个列向量 如: 给定数组[1,2,3:4,5,3] 返回[3:5] import numpy as np x = np.array([[1,2,3],[4,5,3]]) # 先求每行最大值得下标 index_max = np.argmax(x, axis=1)# 其中,axis=1表示按行计算 print(index_max.shape) max = x[range(x.shape[0]), index_max] print(max) # 注
-
C++利用函数动态创建二维数组
本文实例为大家分享了C++利用函数动态创建二维数组的具体代码,供大家参考,具体内容如下 很简单,使用两个new创建即可. 运行截图及代码如下: #include<iostream> #include<string> #include<stdio.h> #include<algorithm> using namespace std; int **creat(int m,int n) { int **p; int i,j; p = new int *[m]; f
-
python numpy 一维数组转变为多维数组的实例
如下所示: import numpy new_list = [i for i in range(9)] numpy.array(new_list).reshape(3,3) 借助numpy库: 以上这篇python numpy 一维数组转变为多维数组的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.
随机推荐
- C#操作字符串方法总结实例代码
- XML入门的常见问题(二)
- jquery easyui中treegrid用法的简单实例
- 解决AngualrJS页面刷新导致异常显示问题
- ORA-12514及ORA-28547错误解决方案
- asp #include命令
- python操作redis的方法
- VBS 批量读取文件夹内所有的文本到Excel的脚本
- Sql Server 2005 默认端口修改方法
- jQuery实现hover合成事件的方法
- jQuery+CSS3实现四种应用广泛的导航条制作实例详解
- C#打包应用程序,与.NETFramework介绍
- 原生JS取代一些JQuery方法的简单实现
- 基于Bootstrap实现Material Design风格表单插件 附源码下载
- .Net项目中一些常用验证操作
- 解决laravel 5.1报错:No supported encrypter found的办法
- Android TreeView效果实现方法(附demo源码下载)
- mysql 获取昨天日期、今天日期、明天日期以及前一个小时和后一个小时的时间
- 详解OpenCV For Java环境搭建与功能演示
- PHP join()函数用法与实例讲解