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

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

有沒有更簡單的方法來編寫這個比較運算符語句?

有沒有更簡單的方法來編寫這個比較運算符語句?

慕桂英546537 2023-01-04 11:09:30
我是 Python 的新手。我有以下 if 語句:if(userGuess == "0" or userGuess == "1" or userGuess == "2" or userGuess == "3" or userGuess == "4" or userGuess == "5" or userGuess == "6" or userGuess == "7" or userGuess == "8" or userGuess == "9"):    print("\n>>>error: cannot use integers\n")    continue基本上,如果用戶輸入任何數字,循環將重置。有什么辦法可以寫出這個語句來讓它更高效一點嗎?(即更少的代碼和更清潔)
查看完整描述

3 回答

?
慕尼黑的夜晚無繁華

TA貢獻1864條經驗 獲得超6個贊

possibilities = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]


if userGuess in possibilities:

    #do something

或者,如果您愿意與整數進行比較,則可以執行以下操作:


if userGuess < 10:

    #do something


查看完整回答
反對 回復 2023-01-04
?
郎朗坤

TA貢獻1921條經驗 獲得超9個贊

你可以這樣做:


nums = [str(i) for i in range(10)] # gets a list of nums from 0 to 9    


if userGuess in nums:

    print("Num found")


查看完整回答
反對 回復 2023-01-04
?
慕哥6287543

TA貢獻1831條經驗 獲得超10個贊

假設userGuess是一個字符串并且可以不是單個字符,

if(any(c.isdigit() for c in userGuess):
    ....

如果猜測應該正好是一個字符,你可以

if(len(userGuess) != 1 or userGuess in "0123456789"):
    ....

要么

if(len(userGuess) != or userGuess.isdigit()):
    ...

想一想,這isdigit是更好的方法。假設用戶輸入了孟加拉語號碼???.isdigit()True


查看完整回答
反對 回復 2023-01-04
  • 3 回答
  • 0 關注
  • 156 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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