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

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

,換成了+為什么就不行了?

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

變成 ? ?print x[0]+':'+x[1]

為什么就無法輸出了?

正在回答

3 回答

不得不用加粗說明了,大家的熱情可嘉,可是如果自己沒有確切的答案 還答復的話,實在是一種干擾,抱歉這么沒有禮貌。

答案:

在Python 中, 加號主要有這么兩種用處:
第一: 數字的加法

第二:拼接,字符串拼接,列表拼接,元組拼接, 呃 其他待補充。。

##?加法
print?1+1
2


##?拼接
print?"hello"+"?world"
"hello?world"

print?[1,2]+[3,4]
[1,?2,?3,?4]

print?(1,2)+(3,4)
(1,?2,?3,?4)

但是,如果用加號 連接不同類型的值的時候 就會出錯了, 比如 字符串 + 數字:

s?=?set([('Adam',?95),?('Lisa',?85),?('Bart',?59)])
for?x?in?s:
????print?x[0],':'+x[1]
????
##?此處,?':'?是字符串,?而x[1]?則是數字?,?會報如下錯誤:
TypeError:?Can't?convert?'int'?object?to?str?implicitly
類型錯誤:?不能?隱性的將int對象?轉化成?str。

##?這個錯誤什么意思呢?

跳出來說吧, 因為我們 讓字符串 加 數字(字符串 + 數字), 對于解釋器來說, 它先看到了字符串,然后看到了加號, 這時,解釋器就期待 加號后面仍然為 字符串, 但是它卻遇到了 數字, 這時候它就抱怨說: “不好意思,我不能自主的將數字轉化成字符串(隱性轉化的意思就是 代碼沒有明確的說明要轉換,而解釋器或者編譯器自動轉換; 而Python 是不支持 int 和 str 之間的隱性轉換的)”


所以總結就是,之所以不對, 跟格式要求沒啥關系, 就是 加號 的用法問題。

當然 x[0] 與 ":" 直接之所以能用 加號, 至此,題主應該沒有疑惑了吧。

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

不思其反

大神請問 那如何在數字 后面加字符呢? 用加號 他會告訴我把后面轉換為 str
2016-05-17 回復 有任何疑惑可以回復我~
#2

清波 回復 不思其反

沒明白你的問題。。
2016-05-17 回復 有任何疑惑可以回復我~
#3

不思其反 回復 清波

比如他這個print x[0],':'+x[1],+',' 我想在每個x[1]的值后面寫個,
2016-05-17 回復 有任何疑惑可以回復我~
#4

清波 回復 不思其反

那就沒有必要寫 成 +',' 了, 直接寫成 print x[0],':',x[1],','
2016-05-18 回復 有任何疑惑可以回復我~
查看1條回復

輸出的格式是有空格要求的

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

我之前也在懷疑這個 為什么java/C++里面的在這有時候就有問題。注意了:你前面是字符串,后面還有東西的話就用逗號分開,如果直接是x[0]和x[1]中間可以用+

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

舉報

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

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

進入課程

,換成了+為什么就不行了?

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

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

幫助反饋 APP下載

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

公眾號

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