python中创建数组 - Go语言中文社区

python中创建数组


Python中,创建二维数组,本质上是创建一个list,而且这个list的元素还是list。可以用列表解析的方法实现。

创建例子如下:

[python]  view plain  copy
  1. def genMatrix(rows,cols):  
  2.     matrix = [[0 for col in range(cols)] for row in range(rows)]  
  3.     for i in range(rows):  #注意这些循环语句只是遍历的时候用的,产生数组只是上面那一行代码
  4.         for j in range(cols):  
  5.             print matrix[i][j],  
  6.         print 'n'  

这样也可以:

n = 2  
m = 3  
matrix = [random.uniform(0,1)]*2  
for i in range(len(matrix)):  
    matrix[i] = [random.uniform(0,1)]*3  
print(matrix)


[[0.016560709454138345, 0.016560709454138345, 0.016560709454138345], [0.27438207391838243, 0.27438207391838243, 0.27438207391838243]]

python三维数组

  (2012-02-28 14:41:07)
标签: 

杂谈

 
分类: python学习

Python没有数组的概念,相对于一维数组,python已经转化为list和tuple,但是对于其他语言中对应的多维数组,在python中表示非常麻烦,很容易出现错误,也不容易引用。

考虑到dict对于任意元素的索引方式,如果将数字索引作为dict的键值,那么可以将dict看作一个特殊的数组,从而也方便在python中进行索引。下面创建了一个三维数组:不过这种定义的方式相当于声明一个数组,后续还要自己遍历赋值

hough = {}
w, h, radius = 51010
for x in xrange(w):
    yhough = {}
    for y in xrange(h):
        rhough = {}
        for r in xrange(radius):
            rhough[r] = 0
        yhough[y] = rhough
    hough[x] = yhough

采用上面方式创建的三维数组,可以直接使用hough[x][y][r]来进行索引处理,从而减少编程时维数引用的考虑,避免不必要错误。对于n维数组的创建,也使用同样的方法。其实这种方法是最通用的

当然最好用的还是python中自带的包numpy

data1=np.array([random.uniform(0,1) for i in range(0,30)])
data2=np.array([random.uniform(10,20) for i in range(0,30)])
data3=np.array([random.uniform(20,30) for i in range(0,30)])
data=np.array([data1,data2,data3])

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/dulingtingzi/article/details/51250694
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-04-24 08:39:08
  • 阅读 ( 1318 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢