3-9 晚餐嘉賓:在完場練習3-6時編寫的程序之一中,使用len()打印一條消息,指出有多少位嘉賓來與你共進晚餐。
自己先寫的程序如下:
1 # coding=gbk 2 #邀請一些人吃飯 3 per_list=['yu peng','naroto','li yue'] 4 print('I will invite '+per_list[0].title()+','+per_list[1].title()+' and '+per_list[2].title()+' to dinner!') 5 #李月不能來,替換為王哥 6 print(per_list[2].title()+" can't come.") 7 per_list[2]='wang ge' 8 #給列表的人發送邀請消息 9 print("\n"+per_list[0].title()+",may I invite you to dinner?") 10 print(per_list[1].title()+",may I invite you to dinner?") 11 print(per_list[2].title()+",may I invite you to dinner?") 12 #我找到了一個更大的桌子 13 print("I find a bigger desk to invite more person") 14 print(per_list) 15 #添加一些嘉賓 16 per_list.insert(0,'he liang') 17 per_list.insert(2,'li xi') 18 per_list.append('xu bao') 19 print(per_list) 20 #給列表的人發送邀請消息 21 print("\n"+per_list[0].title()+",may I invite you to dinner?") 22 print(per_list[1].title()+",may I invite you to dinner?") 23 print(per_list[2].title()+",may I invite you to dinner?") 24 print(per_list[3].title()+",may I invite you to dinner?") 25 print(per_list[4].title()+",may I invite you to dinner?") 26 print(per_list[5].title()+",may I invite you to dinner?") 27 #打印出我邀請嘉賓的數量 28 shuliang=len(per_list) 29 print('我邀請的嘉賓數量為:'+shuliang)
然后運行的時候29行出錯,錯誤代碼為TypeError:must be str,not int.
百度發現29行需要“+”需要改成“,”,即print('我邀請的嘉賓數量為:',shuliang)
從這里我發現len()函數輸出的是字符串,而不是int整型。
受評論區的兄弟啟發,發現我弄錯了,len()函數輸出的就是int整型。