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

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

答案有問題嗎??

s = set([('Adam', 95), ('Lisa', 85), ('Bart', 59)])

for x in s:

? ? print x[0] + ':',x[1]

為什么不行呢?答案錯了?

正在回答

1 回答

主要原因是加好兩邊數據類型不一致,左邊的x[0]是字符串,右邊的x[1]是數值,所以出錯。

其次,你又用了加號,又用了逗號。。。

強行使用加號,改為如下即可。

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

為了不破壞數據類型,建議使用逗號,如下。

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

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

司夜刺客 提問者

謝謝!懂了
2017-11-23 回復 有任何疑惑可以回復我~
#2

Jannicicy 回復 司夜刺客 提問者

同學你好 我用你的代碼運行了一下,你的代碼理論上是沒有問題的,而是你的逗號,是中文格式下的,你可以把你的代碼中的,換成英文的就能運行出來。 對于這個任務我是這樣理解的,+只有在相同類型的數值下才能起到連接符的作用想x[0]是字符串,‘:’也是字符串,所以它們倆之間就能用+進行連接,然而x[1]是整數類型,所以可以把其轉換成字符串再用+連接 比如:print x[0]+':'+str(x[1]) 實際上逗號,不能起到連接的作用,只是print在讀取逗號,時會自動形成空格 所以看起來像連接起來一樣。當然用逗號來處理也是正確的。
2017-11-24 回復 有任何疑惑可以回復我~
#3

weixin_慕后端7114078 回復 Jannicicy

這是正解
2019-08-12 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

答案有問題嗎??

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

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

幫助反饋 APP下載

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

公眾號

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