Python的多维空数组赋值方法

yipeiwu_com6年前Python基础

Python里面的list、tuple默认都是一维的。

创建二维数组或者多维数组也是比较简单。

可以这样:

list1 = [1,2,] 
list1.append([3,4,]) 

可以这样:

list2 = [1,2,[3,4,],] 

还可以这样:

list3 = [1,2] 
list3.insert(2, [3,4]) 

比较特殊的情况是:

list0 = [] 
list0.append([]) 

然后想给二维数组list0的第一个元素赋值。直接写list0[0][0]是会被编译器报错的。

那怎么办?list0[0]是可以的,所以就简单了。

list0[0].append(100) 
print list0[0][0] #这次没问题了。 

想法来源自一个小兄弟问我的一道面试题(改错题)。打印N阶杨辉三角形。当然不能双循环里面挨个算组合数。

简单的解法如下:

N = 10 #以10阶为例演示 
YHTriangle = [] 
for i in range(N): # 行 
 YHTriangle.append([]) 
 if i == 0: 
  YHTriangle[i].append(1) #第一行只有 1 
 else: 
  YHTriangle[i].append(1) #最左元素永远为 1 
  YHTriangle[i].append(1) #最右元素永远为 1 
  for j in range(1,i): #中间元素 
   if i <> 0 and i <> 1: 
    YHTriangle[i].insert(j,YHTriangle[i-1][j-1] + YHTriangle[i-1][j]) 
for i in range(N): 
 print YHTriangle[i] 

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

相关文章

Python常用的json标准库

当请求 headers 中,添加一个name为 Accept,值为 application/json 的 header(也即“我”(浏览器)接收的是 json 格式的数据),这样,向服务...

通过Python 获取Android设备信息的轻量级框架

今天跟大家分享一下,如何通过Python实现一个轻量级的库来获取电脑上连接的Android设备信息,为什么说轻量呢因为整个库也就4KB,相比其他诸如Appetizer这样动辄就8MB多的...

举例详解Python中的split()函数的使用方法

函数:split() Python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字...

python遍历数组的方法小结

本文实例总结了python遍历数组的方法。分享给大家供大家参考。具体分析如下: 下面介绍两种遍历数组的方法,一种是直接通过for in 遍历数组,另外一种是通过rang函数先获得数组长度...

Python 深入理解yield

只是粗略的知道yield可以用来为一个函数返回值塞数据,比如下面的例子: ˂!-- Code highlighting produced by Actipro CodeHighligh...