1. 程式人生 > >《Python程式設計:從入門到實踐》 第四天

《Python程式設計:從入門到實踐》 第四天

4.4 使用列表的一部分 學習如何處理列表的所有元素。你還可以處理列表的部分元素——Python稱之為切片。 4.4.1 切片 要建立切片,可指定要使用的第一個元素和最後一個元素的索引;但是也有差一情況。

players = ['charles', 'martina', 'michael', 'florence', 'eli'] 
print(players[0:3])
輸出:['charles', 'martina', 'michael']

該處程式碼列印的是該列表的一個切片,其中只包含前三名隊員。 如果你沒有指定第一個索引,Python將自動從列表開頭開始:

players = ['charles', 'martina', 'michael', 'florence', 'eli'] 
print(players[:4])

要讓切片終止於列表末尾,也可使用類似的語法; 如果要提取從第3個元素到列表末尾的所有元素,可將起始索引指定為2,並省略終止索引

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

也可以使用切片players[-3:],輸出名單上的最後三名隊員。

4.4.2遍歷切片 可在for迴圈中使用切片

players = ['charles', 'martina', 'michael', 'florence', 'eli'] 
print("Here are the first three players on my team:") 
for player in players[:3]: 
     print(player.title())

處理資料時,可使用切片來進行批量處理;編寫Web應用程式時,可使用切片來分頁顯示資訊,並在每頁顯示數量合適的資訊。

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

 my_foods = ['pizza', 'falafel', 'carrot cake'] 
friend_foods = my_foods[:]   //將my_food列表複製到friend_foods列表中

my_foods = ['pizza', 'falafel', 'carrot cake'] 
#這行不通
friend_foods = my_foods 
my_foods.append('cannoli')
friend_foods.append('ice cream')
print("My favorite foods are:")
print(my_foods)
print("\nMy friend's favorite foods are:")
print(friend_foods)

這裡將my_foods賦給friend_foods,這種語法實際上是讓Python將新變數friend_foods關聯到包含在my_foods中的列表,因此這兩個變數都指向同一個列表。

4.5 元組 列表非常適合用於儲存在程式執行期間可能變化的資料集,元組是一系列不可修改的元素。Python將不能修改的值稱為不可變的,而不可變的列表被稱元組。

4.5.1 定義元組 定義元組後,就可以使用索引來訪問其元素,就像訪問列表元素一樣,元組是使用圓括號標識的。

dimensions = (200,50)
print(dimensions[0])
print(dimensions[1])
輸出:
200 
50

下面來嘗試修改元組dimensions中的一個元素,看看結果如何:

dimensions = (200, 50) 
dimensions[0] = 250

這是被禁止的,python報告錯誤。

4.5.2 遍歷元組中的所有值 也可以用for來遍歷元組中的所有值。

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

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

#想要修改矩形的尺寸,
# dimensions = (200, 50) 
# dimensions[0] = 250   #行不通

dimensions = (200, 50) 
print("Original dimensions:")
for dimension in dimensions:
	print(dimension)
	
dimensions=(400,100)
print("\nModified dimensions:") 
for dimension in dimensions: 
	print(dimension)

如果需要儲存的一組值在程式的整個生命週期內都不變,可使用元組。

4.6 設定程式碼格式 4.6.1 格式設定指南 需要編寫Python改進提案(Python Enhancement Proposal,PEP)。PEP 8是最古老的PEP之一。 4.6.2 縮排 PEP 8建議每級縮排都使用四個空格,你在編寫程式碼時應該使用製表符鍵,但一定要對編輯器進行設定,使其在文件中插入空格而不是製表符。 4.6.3 行長 都建議每行不超過80字元。PEP 8還建議註釋的行長都不超過72字元。 4.6.4 空行 4.6.5 其他格式設定指南