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

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

Python 的不同異常

Python 的不同異常

眼眸繁星 2022-10-06 16:47:09
我正在使用 Python 熱身,需要您的幫助來應(yīng)用一些例外情況。這是一個(gè)簡(jiǎn)單的猜謎游戲,用戶輸入輸入并嘗試猜測(cè)生成的隨機(jī)數(shù)。我正在嘗試捕獲用戶輸入從 1 到 50 的數(shù)字的異常。為此,我使用了 IndexError。這是我使用的正確錯(cuò)誤類型嗎?我還輸入了另一個(gè)異常,即 ValueError 以防止確保用戶輸入數(shù)字,而不是空格。我的問題是如何拋出用戶只輸入 1 到 50 之間的數(shù)字的異常?import randomnumber_of_guesses = 0number = random.randint(1,50)name = input('Hi! Enter your name: ')while number_of_guesses < 8:    try:        guess = input("Take a guess between 1 and 50 including ")        guess = int(guess)        number_of_guesses+=1        guesses_left = 8 - number_of_guesses    except IndexError:        print('Please enter a number only between 1 and 50 including')        continue    except ValueError:        print('Enter a number')        continue    if guess>number:        print('Your guess is higher than the actual number',guesses_left,'guesses left')    elif guess<number:        print('Your guess is lower than the actual number',guesses_left,'guesses left')    elif guess==number:        breakif guess==number:    print('Well done! You guessed the number in',number_of_guesses,'tries:')if guess != number:    print('Sorry, the number I was thinking of was',number)
查看完整描述

2 回答

?
慕村225694

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

歡迎來到 SO 和 python


首先,退一步了解 try/except 塊的作用。


try/是一個(gè)結(jié)構(gòu),其中 Python 將“嘗試”執(zhí)行代碼塊并通過將 Exception 的類型與子句except指定的錯(cuò)誤類型相匹配來捕獲任何異常(或意外錯(cuò)誤)。except


IndexError當(dāng)您嘗試索引支持索引的對(duì)象(例如 a list)并且您指定的索引超出索引范圍時(shí)會(huì)發(fā)生 An ,例如:



my_list = ["a", "b", "c"]


print(mylist[0])

# will print "a"


print(my_list[4])

# with raise in IndexError as index 4 doesn't exist.

在您的示例中,在傳遞非整數(shù)參數(shù)值時(shí)ValueError調(diào)用 to 引發(fā)。int因?yàn)槟銢]有索引任何東西IndexError都沒有提出。


至于將 if/else 放在 try 塊之內(nèi)還是之外。通過將其放在 try 塊中,可以捕獲 if/else 塊中引發(fā)的任何異常。在這兩種情況下,if/else 塊的行為保持不變。


查看完整回答
反對(duì) 回復(fù) 2022-10-06
?
至尊寶的傳說

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

對(duì)于索引錯(cuò)誤,您需要索引一個(gè)列表

a = [1 , 2, 3]
print(a[5])

通過在 try 中放置語句,您可以捕獲程序中的異常并可以自己處理問題,以便程序繼續(xù)運(yùn)行。

在嘗試之外會(huì)導(dǎo)致異常錯(cuò)誤并且程序中止。


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

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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