python第二次練習

例題3-10 嘗試使用各個函數

   描述: 建立一個列表,對本章的每個函數,至少使用一次來處理。
   代碼:

#coding=utf-8
attractions = ['Spain', 'Turkey', 'Morocco', 'Japan', 'Finland']
attractions.append('France') #使用append()添加到列表最後
attractions.append('Singapore')
print(attractions)
attractions.insert(-1,'Iceland') #使用insert()添加到列表最後,實際是替換了原列表最後元素
print(attractions) #看出原來最後的元素依然是最後一個
del attractions[-1] #使用del刪除最後一個元素
print(attractions)
attractions.pop() #使用pop()刪除最後一個元素
print(attractions)
attractions.remove('France') #使用remove()刪除給定值
print(attractions)
print(sorted(attractions, reverse = True)) #使用sorted按非字母順序排序,不改變原值
print(attractions)
attractions.reverse() #使用reverse反向排序
print(attractions)
attractions.sort(reverse = True) #使用sort按非字母順序排序,改變原值
print(attractions)
print(len(attractions)) #打印列表長度

   結果:
這裏寫圖片描述

例題3-8 放眼世界

   描述: 對列表使用sorted(),sort()和reverse()方法,比較它們。
   代碼:

#coding=utf-8
attractions = ['Spain', 'Turkey', 'Morocco', 'Japan', 'Finland']
print(attractions) 
print(sorted(attractions)) #字母順序,不改變
print(attractions) 
print(sorted(attractions, reverse = True)) #非字母順序
print(attractions)  
attractions.reverse() #反序,改變
print(attractions)
attractions.reverse()
print(attractions)
attractions.sort() #順序,改變
print(attractions)
attractions.sort(reverse=True) #非字母順序
print(attractions)

結果:
這裏寫圖片描述

例題3-4to3-7 嘉賓名單

   描述: 建立嘉賓名單,進行修改,添加,刪除等操作
   代碼:

#coding=utf-8
guests = ['grandpa', 'grandma', 'sister']
message1 = guests[0].title() + ", would you like to join my dinner party?"
message2 = guests[1].title() + ", would you like to join my dinner party?"
message3 = guests[2].title() + ", would you like to join my dinner party?"
print(message1)
print(message2)
print(message3)
message4 = '\n' + guests[-1].title() + " cannot join the party."
print(message4)
guests[-1] = 'father' #修改嘉賓信息
message1 = guests[0].title() + ", would you like to join my dinner party?"
message2 = guests[1].title() + ", would you like to join my dinner party?"
message3 = guests[2].title() + ", would you like to join my dinner party?"
print(message1)
print(message2)
print(message3)
message4 = '\nWhen I have found a bigger table...'
print(message4)
guests.insert(0, 'mother') #添加嘉賓到第一位
guests.insert(2, 'aunt') #添加到中間
guests.append('brother') #添加到末尾
message1 = guests[0].title() + ", would you like to join my dinner party?"
message2 = guests[1].title() + ", would you like to join my dinner party?"
message3 = guests[2].title() + ", would you like to join my dinner party?"
message4 = guests[3].title() + ", would you like to join my dinner party?"
message5 = guests[4].title() + ", would you like to join my dinner party?"
message6 = guests[5].title() + ", would you like to join my dinner party?"
print(message1)
print(message2)
print(message3)
print(message4)
print(message5)
print(message6)
message = 'I have invited ' + str(len(guests)) + ' guests to my dinner party.'
print(message)
message5 = '\nOne sad news came that my table can only serve two guests...'
print(message5)
#刪除嘉賓至只剩兩人
while len(guests)>2 :
    guest = guests.pop() 
    message = guest.title() + ', I am so sorry that I cannot invite you to my dinner party.'
    print(message)
message = guests[0].title() + ', you are still invited.'
print(message)
message = guests[1].title() + ', you are still invited.'
print(message)
del guests[0] #刪除所有嘉賓
del guests[0]
print(guests) #檢查名單是否爲空

   結果:
這裏寫圖片描述

本次練習遇到的問題:

  1. 第一次用到while語句,要記住限定條件,冒號,縮進。
  2. sorted非字母順序的用法:sorted(list,reverse=True)。
  3. 刪除列表最後兩個元素時,先刪除了0,再刪除時仍用1,導致錯誤。
  4. len返回值爲int,記得使用str()在必要時。
  5. insert在-1位置時,是替換原來最後一個元素的位置,原元素後移。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章