python怎麼定義陣列
Python中沒有陣列的資料結構,但列表很像陣列,如:
a=[0,1,2],這時a[0]=0, a[1]=1, a[[2]=2,但引出一個問題,即如果陣列a想定義為0到999怎麼辦?這時可能透過a = range(0, 1000)實現。或省略為a = range(1000).如果想定義1000長度的a,初始值全為0,則 a = [0 for x in range(0, 1000)]
下面是二維陣列的定義:
直接定義 a=[[1,1],[1,1]],這裡定義了一個2*2的,且初始為0的二維陣列。
間接定義 a=[[0 for x in range(10)] for y in range(10)],這裡定義了10*10初始為0的二維陣列。
還有更簡單的字義二維陣列的方法:
b = [[0]*10]*10,定義10*10初始為0的二維陣列。
與a=[[0 for x in range(10)] for y in range(10)]比較:print a==b的結果為True。
但用b的定義方法代替a後,以前的可以正常執行的程式也出錯了,經過仔細分析得出區別:
a[0][0]=1時,只有a[0][0]為1,其他全為0。
b[0][0]=1時,a[0][0],a[1][0],只到a[9,0]全部為1。
由此得到大陣列中的10個小的一維資料全是一個相同的引用,即指向同一地址。
故 b = [[0]*10]*10並不符合我們常規意義上的二維陣列。
更多學習內容,請點選。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2249/viewspace-2836109/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python中怎麼列印陣列Python陣列
- GO 陣列-多種定義Go陣列
- Java 定義長度為 0 的陣列 / 空陣列Java陣列
- python中整數怎麼定義Python
- JAVA陣列的定義及用法Java陣列
- java 陣列的定義(宣告)方法Java陣列
- python怎麼生成隨機不重複陣列Python隨機陣列
- TS定義陣列 ts宣告函式陣列函式
- 實體類定義陣列物件,和物件陣列物件
- python陣列下標怎麼獲取值並輸出Python陣列
- 【基礎題】【陣列】定義並初始化陣列
- vue3+ts 定義props中的物件陣列Vue物件陣列
- thymeleaf關於js的一些坑(陣列定義)JS陣列
- shell 中怎麼定義常量
- python實現給定一個數和陣列,求陣列中兩數之和為給定的數Python陣列
- js:陣列自定義排序JS陣列排序
- 什麼是抽象類?怎麼定義?抽象
- Python命令列引數定義及注意事項Python命令列
- Java總結 Day17 <物件陣列的定義與使用>Java物件陣列
- (三)陣列的定義、折半查詢、排序(選擇和冒泡)陣列排序
- Python怎麼設定代理Python
- Python陣列常用操作Python陣列
- 大家怎麼初始化多維陣列陣列
- cad陣列快捷鍵命令怎麼用 cad環形陣列命令的快捷鍵陣列
- 陣列怎樣在python3中逆序輸出?陣列Python
- 矩陣指數的定義矩陣
- API 返回多維陣列,子陣列總變成物件,該怎麼處理好呢?API陣列物件
- 第 10 節:複合型別 1.5 二維陣列定義和使用型別陣列
- Leetcode 陣列中和為給定值的最長子陣列LeetCode陣列
- 怎麼快速記憶系統陣列函式陣列函式
- python輸入詳解(陣列、矩陣)Python陣列矩陣
- Python列表建立NumPy陣列Python陣列
- Python多個陣列合並(拼接)為一個陣列Python陣列
- Java基礎(四)——switch語句、一維陣列、二維陣列的定義、儲存、遍歷、常見問題Java陣列
- python怎麼自定義安裝路徑?Python
- 面試官問你陣列和ArrayList怎麼答?面試陣列
- 字串json陣列怎麼轉換成jsonobject型別字串JSON陣列Object型別
- 陣列中查詢給定值陣列