3-1 姓名: 將一些朋友的姓名存儲在一個列表中,並將其命名為names 。依次訪問該列表中的每個元素,從而將每個朋友的姓名都打印出來。
names = ["F","i","o","n","a"]
print(names[0])
print(names[1])
print(names[2])
print(names[3])
print(names[4])
3-2 問候語: 繼續使用練習3-1中的列表,但不打印每個朋友的姓名,而為每人打印一條消息。每條消息都包含相同的問候語,但抬頭為相應朋友的姓名。
names = ["F","i","o","n","a"]
print(names[0] + " nice to meet you~")
print(names[1] + " nice to meet you~")
print(names[2] + " nice to meet you~")
print(names[3] + " nice to meet you~")
print(names[4] + " nice to meet you~")
3-3 自己的列表: 想想你喜歡的通勤方式,如騎摩托車或開汽車,並創建一個包含多種通勤方式的列表。根據該列表打印一系列有關這些通勤方式的宣言,如“I would like to own a Honda motorcycle”。
cars = ["car","bike","boat"]
print("I would like to own a " + cars[0] + "。")
print("I would like to own a " + cars[1] + "。")
print("I would like to own a " + cars[2] + "。")
3-4 嘉賓名單 :如果你可以邀請任何人一起共進晚餐(無論是在世的還是故去的),你會邀請哪些人?請創建一個列表,其中包含至少3個你想邀請的人;然后,使用 這個列表打印消息,邀請這些人來與你共進晚餐。
letter = ['A','B','C','D']
for i in letter:
print("你好, " + i + " 和我一起共進晚餐如何。")
3-5 修改嘉賓名單 :你剛得知有位嘉賓無法赴約,因此需要另外邀請一位嘉賓。 以完成練習3-4時編寫的程序為基礎,在程序末尾添加一條print 語句,指出哪位嘉賓無法赴約。 修改嘉賓名單,將無法赴約的嘉賓的姓名替換為新邀請的嘉賓的姓名。 再次打印一系列消息,向名單中的每位嘉賓發出邀請。
letter = ['A','B','C','D']
for i in letter:
print("你好, " + i + " 和我一起共進晚餐如何。")
remove_letter = 'D'
letter.remove(remove_letter)
letter.append('E')
print("由於特殊原因" + remove_letter + "因故無法參加晚宴,將由" + letter[-1] + "代替參加晚宴")
for i in letter:
print("你好, " + i + " 和我一起共進晚餐如何。")
3-6 添加嘉賓 :你剛找到了一個更大的餐桌,可容納更多的嘉賓。請想想你還想邀請哪三位嘉賓。以完成練習3-4或練習3-5時編寫的程序為基礎,在程序末尾添加一條print 語句,指出你找到了一個更大的餐桌。
使用insert() 將一位新嘉賓添加到名單開頭。 使用insert() 將另一位新嘉賓添加到名單中間。
使用append() 將最后一位新嘉賓添加到名單末尾。 打印一系列消息,向名單中的每位嘉賓發出邀請。
letter = ['A','B','C','D']
for i in letter:
print("你好, " + i + " 和我一起共進晚餐如何。")
remove_letter = 'D'
letter.remove(remove_letter)
letter.append('E')
print("由於特殊原因" + remove_letter + "因故無法參加晚宴,將由" + letter[-1] + "代替參加晚宴")
for i in letter:
print("你好, " + i + " 和我一起共進晚餐如何。")
print("有了更大的餐桌,我們將要再邀請3位嘉賓~")
letter.insert(0,"X")
letter.insert(2,"Y")
letter.append("Z")
for i in letter:
print("歡迎 " + i + " 如約赴宴" + ".")
3-7 縮減名單 :你剛得知新購買的餐桌無法及時送達,因此只能邀請兩位嘉賓。 以完成練習3-6時編寫的程序為基礎,在程序末尾添加一行代碼,打印一條你只能邀請兩位嘉賓共進晚餐的消息。
使用pop() 不斷地刪除名單中的嘉賓,直到只有兩位嘉賓為止。
每次從名單中彈出一位嘉賓時,都打印一條消息,讓該嘉賓知悉你很抱歉,無法邀請他來共進 晚餐。
對於余下的兩位嘉賓中的每一位,都打印一條消息,指出他依然在受邀人之列。
使用del 將最后兩位嘉賓從名單中刪除,讓名單變成空的。打印該名單,核實程序結束時名單確實是空的。
letter = ['A','B','C','D']
for i in letter:
print("你好, " + i + " 和我一起共進晚餐如何。")
remove_letter = 'D'
letter.remove(remove_letter)
letter.append('E')
print("由於特殊原因" + remove_letter + "因故無法參加晚宴,將由" + letter[-1] + "代替參加晚宴")
for i in letter:
print("你好, " + i + " 和我一起共進晚餐如何。")
print("有了更大的餐桌,我們將要再邀請3位嘉賓~")
letter.insert(0,"X")
letter.insert(2,"Y")
letter.append("Z")
for i in letter:
print("歡迎 " + i + " 如約赴宴" + ".")
print("由於經濟原因,導致只能邀請到兩位嘉賓了,還望大家見諒。")
#可以替換for循環刪除
number = len(letter)
while number > 2:
letters = letter.pop()
print(letters + "很抱歉,由於經費有限,不能邀請您來參加了。")
number = number - 1
##可以替換for循環刪除
for number in letter:
print(number + "歡迎您還能准時赴約。")
del letter[-1]
del letter[-1]
print(letter)
- 也可以使用for循環刪除
for i in range(0,5):
i = letter.pop(-1)
print(i + " 很抱歉,由於經費有限,不能邀請您來參加了。")
3-8 放眼世界 :想出至少5個你渴望去旅游的地方。 將這些地方存儲在一個列表中,並確保其中的元素不是按字母順序排列的。 按原始排列順序打印該列表。不要考慮輸出是否整潔的問題,只管打印原始Python列表。
- 使用sorted() 按字母順序打印這個列表,同時不要修改它。 再次打印該列表,核實排列順序未變。
- 使用sorted() 按與字母順序相反的順序打印這個列表,同時不要修改它。 再次打印該列表,核實排列順序未變。
- 使用reverse() 修改列表元素的排列順序。打印該列表,核實排列順序確實變了。
- 使用reverse() 再次修改列表元素的排列順序。打印該列表,核實已恢復到原來的排列順序。
- 使用sort() 修改該列表,使其元素按字母順序排列。打印該列表,核實排列順序確實變了。
- 使用sort() 修改該列表,使其元素按與字母順序相反的順序排列。打印該列表,核實排列順序確實變了
number = ["2","9","1","5","7"]
print(number)
print(sorted(number))
print(number)
print(sorted(number,reverse=True))
print(number)
number.reverse()
print(number)
number.reverse()
print(number)
number.sort()
print(number)
number.sort(reverse=True)
print(number)
3-9 晚餐嘉賓 :在完成練習3-4~練習3-7時編寫的程序之一中,使用len() 打印一條消息,指出你邀請了多少位嘉賓來與你共進晚餐。
words = ["a","b","c"]
for word in words:
print("Welcome " + word + " to my dinner party~~~")
print("共有" + str(len(words)) + "位嘉賓參加宴會~")
3-10 嘗試使用各個函數 :想想可存儲到列表中的東西,如山岳、河流、國家、城市、語言或你喜歡的任何東西。編寫一個程序,在其中創建一個包含這些元素的列表,然后,對於本章介紹的每個函數,都至少使用一次來處理這個列表。
number = ['1']
print(number[0].title())
number.append('2') #添加元素到末尾
print(number)
number.insert(0,'3') #在索引0處添加元素
number.insert(1,'0') #在元素中間插入元素
print(number) #原始,3,0,1,2
print(sorted(number, reverse=True)) #臨時逆向排序
print(sorted(number)) #臨時正向排序
print(len(number)) #查看列表長度
number.sort(reverse=True) #永久逆向排序
print(number)
number.sort() #永久正向排序
print(number)
del number[-2] #刪除正向排序的數字2
print(number)
numn = number.pop(-2) #pop()默認刪除末尾元素,也可以采用索引方法刪除位置元素
print(numn)
print(number)
num = '0' #創建變量num = "0"
number.remove(num) #調用remove(num) 刪除"0"
print(num)
print(number)
number.clear() #使用clear()方法清空列表
print(number) #確認清空列表