python定义数组函数 python数组如何定义( 二 )


range(3)]
对于数组和字符串等常用操作 , 后面会有一章专门介绍,这里就不在列举更多的使用方法 。python数组实际不是数组,而是一个list对象 , 如果要参考它的用法,可以参考这个对象的方法 。需要注意的是,python数组实际是一个链表,因此定义后不能像php之类语言一样 , 直接在后面追加元素 , 而是需要用操作链表的方法操作 。在上述例子中:如果用
arr[2]
=
'ccccc'
可以改变第三个元素的值,但如果用
arr[3]
=
'dddd'
增加一个元素是会指错的,应该用:arr.append('ddddd')

arr.insert(任意位置,
'dddd')
增加元素 。对于多维数组,定义方式为:
arr
=
[[]]
*
3
它定义的是:[[],
[],
[]],也可以用
arr
=
[[]
for
i
in
range(3)]
对于数组和字符串等常用操作,后面会有一章专门介绍,这里就不在列举更多的使用方法 。
Python:numpy.array()创建三维以上数组 需求:根据已有的多个列表,利用numpy.array()函数创建三维以上数组
格式概述: 每一维用一个 [] 括起,不同维之间用 , 逗号间隔,最后总体再用 [] 括起?。。?
说明 :列表肯定是一维的,多个列表一行一行堆叠形成二维,多个这样的二维构成三维,以此类推可得更高维矩阵(一般3维以上就不用numpy.array()这种方法创建了) 。
注意 :高维数组 , 以三维(5,2,3)为例:前面的5代表页数,即表示(2,3)这样的二维矩阵有5个 。即: 前面的数,永远代表比它"低一维"的数组有多少个 !
(1)创建二维数组的例子:
(2)创建三维数组的例子1:(2,3,3)
(3)创建三维数组的例子2:(4,2,3)
补充:最快验证自己创建的数组是否满足自己的维度需求的方式,就是看打印的结果中, 最外面有几个 ] 中括号,有几个 ] 就是几维数组 !如本文中第3个例子,打印结果最外层有3个 ],说明满足3维的要求 。
python:定义函数,输入一个m维数组X和一个整数n,输出一个n*m的矩阵M,其中 M[i] [j]=# Python3.6
import numpy as np
while True:
x = input("输入一个m维数组,元素以空格分开python定义数组函数:")
try:
# split input
x = x.split()
s = []
# iterate:str--int
for i in x:
s.append(int(i))
x = s
break
except:
print("输入有错python定义数组函数,请重新输入 。")
while True:
n = input("整数npython定义数组函数:")
try:
n = int(n)
break
except:
print("输入有错python定义数组函数 , 请重新输入 。")
# map object --list object
lst = [i for i in x]
# list object --numpy.array object
mtrx = np.array(lst)
# copy the 1st line of matrix as a template
mtrx_1 = np.copy(mtrx)
k = len(mtrx)
# reshape (k,) to (1,k) for concatenate
mtrx = np.reshape(mtrx, (1, k))
# calculate left lines
for i in range(1, n):
tmp = np.power(mtrx_1, i+1)
tmp = np.reshape(tmp, (1, k))
mtrx = np.concatenate((mtrx, tmp), axis=0)
print(mtrx)
Numpy 创建数组的常用函数 用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组
shape数组形状
dtype数据类型,可选
order有"C"和"F"两个选项,分别代表,行优先和列优先,在计算机内存中的存储元素的顺序
注意: 数组元素为随机值,因为它们未初始化
创建指定大小的数组,数组元素以 0 来填充
创建指定形状的数组,数组元素以 1 来填充

推荐阅读