簡體   English   中英

如何在浮點輸入中允許字符串?

[英]How to allow strings in a float input?

因此,我要用戶輸入數字(浮點數) num=float(input("Please enter a number"))但是我也要用戶輸入值“ q”退出,因為此變量可以僅接受浮點數,該程序不允許用戶輸入字符串(“ q”),可以這樣做嗎?

期望一個字符串,並且僅當其不等於q時才將其解析為浮點型。

temp = input("Please enter a number")
if not temp == "q":
   num = float(temp)

您正在嘗試將輸入自動轉換為浮點數。 如果您不想在所有情況下都這樣做,則應在此處添加一些if/else邏輯:

input_string = input("Please enter a number")
if not input_string == 'q':
    num = float(intput_string)

或者,要使用更多的pythonic功能,您應該執行try / except策略:

input_string = input("Please enter a number")
try:
    num = float(input_string)
except ValueError:
    if input_string == 'q':
        # However you exit

根據EAFP原則( https://docs.python.org/2/glossary.html ),第二個從技術上講是更Python化的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM