1. 程式人生 > >python入門學習:3.操作列表

python入門學習:3.操作列表

python入門學習:3.操作列表

關鍵點:列表

3.1 遍歷整個列表3.2 建立數值列表3.3 使用列表3.4 元組

3.1 遍歷整個列表

  迴圈這種概念很重要,因為它是計算機自動完成重複工作的常見方式之一。下面使用for迴圈來遍歷。
  注意for迴圈的迴圈體可以包含多行程式碼,只需要保持縮排即可

1magicians = ['alice','david','carolina']
2for magician in magicians:    #依次遍歷magicians 將其值存入magician

3    print(magician)
4#列印值
5alice
6david
7carolina

3.2 建立數值列表

3.2.1 使用函式range()
  python函式range()讓你能夠輕鬆的生成一系列數字。例如:

1for value in range(1,5): #生成一個從1開始到5結束的一個列表
2    print(value)
31
42
53
64

3.2.2 使用函式range()建立數字列表
  要建立數字列表,可使用函式list()將range()的結果直接轉換為列表。如果將range()作為list()的引數,輸出將為一個數字列表。

1numbers = list(range(1,6))
2print(numbers)
3
4[1, 2, 3, 4, 5]

  range()函式還可以指定步長。

1numbers = list(range(2,11,2)) #生成從2~11的數字列表,步長為2
2print(numbers)
3[2, 4, 6, 8, 10]

  建立1~10的平方

1squares = []  #建立一個空列表
2for value
 in range(1,11):  #依次建立1~10
3    square 
value**2      #value*value
4    squares.append(square) #新增到列表
5print(squares)
6
7[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

3.2.3 對數字列表進行統計計算
  計算最大值和最小值以及求和:

1digits = [1,2,3,4,5,6,7,8,9,0]
2min(digits)
30
4max(digits)
59
6sum(digits)
745

3.2.4 列表解析
  前面介紹的生成列表的方式包含三四行程式碼,而列表解析讓你只需要編寫一行程式碼就可以生成同樣的程式碼。列表解析將for迴圈和建立新元素的程式碼合併成一行,並自動附加新元素。

1squares = [value**2 for value in range(1,11)]
2print(squares)
3

  在這個示例中,表示式為value**2,它計算平方值。接下來編寫一個for迴圈,用於給表示式提供值,再加上右括號。注意,這裡的for迴圈不加冒號

3.3 使用列表

3.3.1 切片
  處理列表的部分元素,python稱之為切片。要建立切片,可指定要使用的第一個元素的索引和最後一個元素的索引加1。

1players = ['charles','martina','florence','eli']
2print(players[0:3])
3
4['charles''martina''florence']

  如果沒有指出第一個索引,python將自動從列表開頭開始提取

1players = ['charles','martina','florence','eli']
2print(players[:3])
3['charles''martina''florence']

  終止列表末尾索引也可以省略

1players = ['charles','martina','florence','eli']
2print(players[2:])

3.3.2 遍歷切片
  如果要遍歷列表的部分元素,可在for迴圈中使用切片。

1players = ['charles','martina','florence','eli']
2for player in players[:3]:
3    print(player.title())

3.3.3 複製列表
  複製列表,可建立一個包含整個列表的切片,方法是同時省略起始索引和終止索引([:])

1my_foods = ['pizza','falafel','carrot cake']
2friend_foods = my_foods[:]  #兩份獨立的列表,修改其中任意一個,對另外一個沒有影響
3friend_foods = my_foods     #將my_foods賦值給friend_foods,兩個變數指向同一列表
4print(friend_foods)

3.4 元組

  python將不能修改的值稱為不可變的,不可變的列表稱為元組。
3.4.1 定義元組
  元組看起來猶如列表,但使用圓括號而不是方括號來標識。定義元組後,就可以使用索引來訪問其元素,就像訪問列表元素一樣。

1dimensions = (200,50)
2print(dimensions[0])
3print(dimensions[1])

3.4.2 遍歷元組中的所有值
  通過for迴圈來遍歷元組中所有值

1dimensions = (200,50)
2for dimension in dimensions:
3    print(dimension)

3.4.3 修改元組變數
  雖然不能修改元組的元素,但可以給儲存元組的變數賦值。

1dimensions = (200,50)
2print("Original dimensions:")
3for dimension in dimensions:
4    print(dimension)
5dimensions = (400,50)      #重新定義元組的值
6print("\nModified dimensions:")
7for dimension in dimensions:
8    print(dimension)