国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

一些Python中的二維數(shù)組的操作方法

2020-01-04 19:17:08
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

這篇文章主要介紹了一些Python中的二維數(shù)組的操作方法,是Python學(xué)習(xí)當(dāng)中的基礎(chǔ)知識(shí),需要的朋友可以參考下

需要在程序中使用二維數(shù)組,網(wǎng)上找到一種這樣的用法:

 

 
  1. #創(chuàng)建一個(gè)寬度為3,高度為4的數(shù)組 
  2. #[[0,0,0],  
  3. # [0,0,0], 
  4. # [0,0,0], 
  5. # [0,0,0]] 
  6. myList = [[0] * 3] * 4 

但是當(dāng)操作myList[0][1] = 1時(shí),發(fā)現(xiàn)整個(gè)第二列都被賦值,變成

 

 
  1. [[0,1,0], 
  2.  
  3. [0,1,0], 
  4.  
  5. [0,1,0], 
  6.  
  7. [0,1,0]] 

為什么...一時(shí)搞不懂,后面翻閱The Python Standard Library 找到答案

list * n—>n shallow copies of list concatenated, n個(gè)list的淺拷貝的連接

例:

 

 
  1. >>> lists = [[]] * 3 
  2. >>> lists 
  3. [[], [], []] 
  4. >>> lists[0].append(3
  5. >>> lists 
  6. [[3], [3], [3]] 

[[]]是一個(gè)含有一個(gè)空列表元素的列表,所以[[]]*3表示3個(gè)指向這個(gè)空列表元素的引用,修改任何

一個(gè)元素都會(huì)改變整個(gè)列表:

所以需要用另外一種方式進(jìn)行創(chuàng)建多維數(shù)組,以免淺拷貝:

 

 
  1. >>> lists = [[] for i in range(3)] 
  2. >>> lists[0].append(3
  3. >>> lists[1].append(5
  4. >>> lists[2].append(7
  5. >>> lists 
  6. [[3], [5], [7]] 

之前的二維數(shù)組創(chuàng)建方式為:

 

 
  1. myList = [([0] * 3for i in range(4)] 

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 乌拉特前旗| 新丰县| 西华县| 五峰| 思南县| 西吉县| 南丹县| 澜沧| 莆田市| 南华县| 渭南市| 武功县| 潞西市| 连平县| 长垣县| 乳山市| 丹阳市| 阜平县| 比如县| 江永县| 佳木斯市| 越西县| 大丰市| 仁布县| 金湖县| 永新县| 甘谷县| 讷河市| 东平县| 增城市| 镇安县| 崇礼县| 平谷区| 旌德县| 兴山县| 垦利县| 进贤县| 正安县| 岳阳市| 赣榆县| 崇州市|