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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果用戶輸入“完成”,我如何打破 while 循環(huán)并轉(zhuǎn)到 finally 塊

如果用戶輸入“完成”,我如何打破 while 循環(huán)并轉(zhuǎn)到 finally 塊

Helenr 2022-07-26 09:41:31
largest = Nonesmallest = Nonel = []while True:    try:        num = input("Enter a number: ")    except NameError as err:        if err == "done":            break        else:            print("Invalid input")    finally:        l.append(num)        l.sort()        largest = l[-1]        smallest = l[0]print("Maximum", largest)print("Minimim", smallest)
查看完整描述

2 回答

?
一只萌萌小番薯

TA貢獻1795條經(jīng)驗 獲得超7個贊

這段代碼看起來像是針對 Python 2.x 的,它input()試圖評估輸入,如果您鍵入的字符串不是變量名,則會發(fā)出錯誤信號。Python 3.x 在您鍵入時不會發(fā)出錯誤信號done。


所以只需比較輸入。當您嘗試將其轉(zhuǎn)換為int.


while True:

    num = input("Enter a number")

    if num == "done":

        break

    try:

        num = int(num)

    except ValueError:

        print("Invalid input")

        continue

    l.append(num)

l.sort()

largest = l[-1]

smallest = l[0]


查看完整回答
反對 回復 2022-07-26
?
料青山看我應(yīng)如是

TA貢獻1772條經(jīng)驗 獲得超8個贊

重構(gòu)邏輯。 NameError不會發(fā)生,finally也不需要……只是在“終于”完成時將其放在外面。


nums = []


while True:

    num = input('Enter a number or "done": ')  # num is a string at this point

    if num == 'done':

        break

    try:

        # try to convert num to integer...

        num = int(num)  # This can fail with ValueError, so is in try

        nums.append(num)   # This won't run if above raises exception

    except ValueError:

        print("Invalid input")


# No need to sort...

print("Maximum", max(nums)) 

print("Minimum", min(nums))


查看完整回答
反對 回復 2022-07-26
  • 2 回答
  • 0 關(guān)注
  • 111 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

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