第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

使用如下這個(gè)輸入字母可以,但是是輸入字母就直接報(bào)錯(cuò)中斷了?為什么?

使用如下這個(gè)輸入字母可以,但是是輸入字母就直接報(bào)錯(cuò)中斷了?為什么?

猛跑小豬 2022-05-07 11:07:14
while True:ten=input('Enter a number:')if type(eval(ten))==type(int):break
查看完整描述

3 回答

?
慕運(yùn)維8079593

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超5個(gè)贊

主要出在eval上。
python3.0

第一個(gè)方案:
while True:
ten=input("x:")
try:
x=eval(ten)
if type(x)==int:break
except:pass
然后輸入asf,沒(méi)有提示。輸入344就退出了
x:asf
x:344

第二個(gè)方案
while True:
ten=None
try:
ten=int(input("x:"))
except:pass
if type(ten)==int:break
這個(gè)在python3.0上調(diào)試通過(guò)

第三個(gè)方案:python2.x的方案
while True:
ten=raw_input("Enter a number:")
if ten.isdigit():break
ten=int(ten) #或者是ten=eval(ten)

都調(diào)試過(guò)。可以用



查看完整回答
反對(duì) 回復(fù) 2022-05-10
?
撒科打諢

TA貢獻(xiàn)1934條經(jīng)驗(yàn) 獲得超2個(gè)贊

具體解決辦法如下:

第一個(gè)方案:

1.復(fù)制代碼,如下,

while True:

ten=input("x:")

try:

x=eval(ten)

if type(x)==int:

break

except:

pass

2.然后輸入asf,沒(méi)有提示。輸入344就退出了

x:asf

x:344

第二個(gè)方案

1.復(fù)制代碼

while True:

ten=None

try:

ten=int(input("x:"))

except:

pass

if type(ten)==int:

break

這個(gè)在python3.0上調(diào)試通過(guò)

第三個(gè)方案:python2.x的方案

while True:

ten=raw_input("Enter a number:")

if ten.isdigit():

break

ten=int(ten)  #或者是ten=eval(ten)



查看完整回答
反對(duì) 回復(fù) 2022-05-10
?
www說(shuō)

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊

首先你使用的input的函數(shù),但是input函數(shù)必須接受的類(lèi)型為數(shù)字你輸入非數(shù)字的字母會(huì)報(bào)錯(cuò)。
其次如果你輸入了數(shù)字你這個(gè)程序也不會(huì)正常工作,ten的類(lèi)型可能是float也可能是int 但是eval接受的參數(shù)類(lèi)型必須是字符串,所以這句if也會(huì)出錯(cuò)。
改為 if type(ten) is type(1):break

查看完整回答
反對(duì) 回復(fù) 2022-05-10
  • 3 回答
  • 0 關(guān)注
  • 217 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)