一定要特別注意,enumerate()
函數和 zip()
返回的不是列表類型,但可以使用list()將其轉換為列表類型。
zip()
函數和 enumerate()
函數。前者用於將兩個相同長度的列表中同位置的元素“綁定”到一起,后者用於將列表中的元素用數字的形式數出來。
兩者返回的對象,都需要進一步用 list()
函數轉換回列表。列表中每個元素都是一個元組。
在小貝心目中,四大名著的地位排序是:《三國演義》《西游記》《紅樓夢》《水滸傳》,他將四本書按他心目中的順序錄進了列表 books_favorite
中。我們能用用剛剛學過的代碼幫他對 books_favorite
進行操作,附上數字表示的排名嗎?
要求:1. 用 zip()
函數將 books
和 authors
以“著作名,作者”的形式結合成新列表。並將結果打印在屏幕上。
2. 新建 books_favorite
列表,按小貝喜愛的順序排列四本書。
3. 用 enumerate()
函數,從 1
開始,枚舉 books_favorite
列表,將結果打印在屏幕
程序:
books = ['紅樓夢', '三國演義', '水滸傳', '西游記']
authors = ['曹雪芹', '羅貫中', '施耐庵', '吳承恩']
# 用 zip() 將兩個列表綁定
books_authors=zip(books,authors)
# 轉換回列表后打印綁定結果
books_authors_list=list(books_authors)
print(books_authors_list)
# 新建 books_favorite 列表,順序按小貝的喜好來
books_favorite=['三國演義', '西游記','紅樓夢', '水滸傳' ]
# 用 enumerate() 函數枚舉結果,從 1 開始
books_favorite_id=enumerate(books_favorite,1)
# 轉換回列表后打印結果
print(list(books_favorite_id))