欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python的多维空数组赋值方法

程序员文章站 2022-07-05 08:02:52
Python里面的list、tuple默认都是一维的。 创建二维数组或者多维数组也是比较简单。 可以这样: list1 = [1,2,] list1.ap...

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的多维空数组赋值方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。