3 回答

TA貢獻(xiàn)1844條經(jīng)驗(yàn) 獲得超8個(gè)贊
有區(qū)別,
x=input() float(x)
這里的x還是字符串,并沒有把float(x)賦值給x。
x=float(input())這里的x是浮點(diǎn)數(shù)。相當(dāng)于:
x=input()
x = float(x)

TA貢獻(xiàn)1793條經(jīng)驗(yàn) 獲得超6個(gè)贊
python中input()和int(input())是有區(qū)別的.
input()返回的是一個(gè)字符串
因?yàn)閏ode也是字符串類型,所以a==code可以比較字符串的內(nèi)容是否相等
而int(input())把input()返回的字符串轉(zhuǎn)換成整型,返回的是整型
code是字符串型,整型的a和字符串型的code肯定不相等,所以不會(huì)輸出win
如果你把while
a
==
code:改成while
a
==
int(code):把code也轉(zhuǎn)換成整型,兩者就可以比較,可以輸出win了

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超2個(gè)贊
我們來看input的源碼
def input(prompt):
return eval(raw_input(prompt))其實(shí)input也是調(diào)用了raw_input,只是做了eval處理
而eval有什么作用呢?
input:會(huì)根據(jù)用戶的輸入來做類型的轉(zhuǎn)換
raw_input:則會(huì)把用戶的輸入都作為一個(gè)字符串來處理
添加回答
舉報(bào)