列表即序列
與字符串類似, 列表是由若干值組成的序列。 字符串中的值是字符;列表中的值可以是任何類型。 列表中的值稱爲元素或數據項。
列表創建 : 最簡單的方法用方括號[]將元素括起來:
[10, 20, 30, 40]
['crunchy frog', 'ram bladder', 'lark vomit']
列表的元素不要求是同一類型的。例如:
['spam', 2.0, 5, [10, 20]]
一個列表作爲另一個列表的元素稱爲列表嵌套。
不含任何元素的列表稱爲空列表。
可以把列表賦值給變量。
”’
cheeses = [‘Cheddar’, ‘Edam’, ‘Gouda’]
numbers = [17, 123]
empty = []
print cheeses, numbers, empty
[‘Cheddar’, ‘Edam’, ‘Gouda’] [17, 123] []
”’
列表是可變的
列表元素的訪問與字符串中字符的訪問語法是一樣的, 使用方括號操作符。
>>> print cheeses[0]
Cheddar
與字符串不同, 列表是可變的。
>>> numbers = [17, 123]
>>> numbers[1] = 5
>>> print numbers
[17, 5]
列表是索引與元素之間的一種關係。 這種關係稱爲映射, 每一個索引對應一個元素。
列表與字符串的索引用法相同:
*1.任何整數表達式都可作爲索引。
*2.試圖讀寫一個不存在的元素時, 你會得到IndexError索引錯誤提示。
*3.如果索引值爲負, 表示從列表的尾部算起。
列表的遍歷
遍歷列表元素最常用的方法是使用for循環。 遍歷語法與字符串遍歷相同:
for cheese in cheeses:
print cheese
如果只需遍歷列表的元素, 這個方法就足夠了。 但如果想寫入或更新元素, 這時就需要索引。 一個常見方法是range函數和len函數的結合使用:
for i in range(len(numbers)):
numbers[i] = numbers[i] * 2
range函數返回一個索引列表( 取值從0到n-1) , 其中n是列表的長度。對i進行循環, 得到下一個元素的索引。 函數體中的賦值語句使用i讀取元素的舊值, 然後給它賦予新值。
儘管一個列表可以包含另一個列表, 但被包含的列表只能被看作一個元素。 以下列表的長度爲4:
['spam', 1, ['Brie', 'Roquefort', 'Pol le Veq'], [1, 2, 3]]