亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

高手來解惑。。。

s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
for x in s:
? ?print x[0] + ':', x[1]
誰可以告訴我為什么?print x[0] + ':', x[1] 的x[0]表示的就是前面的名字而x[1]則表示后面的數字?

如果里面是tuple,為什么不是x[0]表示Adam ,95呢?

還有就是

s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])
? ?print s[0] + ':', s[1]

為什么不行呢?


正在回答

1 回答

因為for循環這里遍歷出來的是3個tuple,分別是('Adam', 95),('Lisa', 85),('Bart', 59),然后每個tuple包含兩個元素,因為tuple是有序集合,所以可以通過下標訪問,下標從0開始,所以x[0]就是'姓名',x[1]就是'分數'。而你說的為什么s[0]不行,這是因為set是無序集合,不能通過下標訪問

0 回復 有任何疑惑可以回復我~
#1

大大的鳥 提問者

非常感謝您的幫助
2015-10-14 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758398    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

高手來解惑。。。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號