python 申请内存空间,用于创建多维数组的实例

yipeiwu_com7年前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中用keys()方法返回字典键的教程

 keys()方法返回在字典中的所有可用的键的列表。 语法 以下是keys()方法的语法: dict.keys() 参数    ...

在交互式环境中执行Python程序过程详解

在交互式环境中执行Python程序过程详解

前言 相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行、命令行窗口运行、开发工具上运行等,其中在不同的操作平台上还互不相同。今天...

深入理解NumPy简明教程---数组1

目前我的工作是将NumPy引入到Pyston中(一款Dropbox实现的Python编译器/解释器)。在工作过程中,我深入接触了NumPy源码,了解其实现并提交了PR修复NumPy的bu...

对Python _取log的几种方式小结

1. 使用.logfile 方法 #!/usr/bin/env python import pexpect import sys host="146.11.85.xxx" user=...

新手常见6种的python报错及解决方法

此篇文章整理新手编写代码常见的一些错误,有些错误是粗心的错误,但对于新手而已,会折腾很长时间才搞定,所以在此总结下我遇到的一些问题。希望帮助到刚入门的朋友们。 1.NameError变量...