2.11Python基礎語法(9):接收使用者輸入

水木·圳烜發表於2018-02-28

@接收使用者輸入的單個值

  • 需要注意的是,使用者輸入的任何值,都會被視為一個字串;
  • 如果要參與數學計算,務必要先將其型別轉換為數值型;
def getSingleInput():
    radius = input("請輸入您的頭的半徑:")  # input函式接收的任何輸入均為字串型別
    print("您的頭的半徑為", radius)

    # area = 3.14 * radius * radius #型別錯誤
    print("radius的型別為:", type(radius))  # 字串型別(str),而非數值型別

    # 只有數值型別才能進行數學計算
    radiusStr = input("請輸入您的頭的半徑:")

    # 將字串轉化為數值,重新賦值給radius
    radius = eval(radiusStr)
    print("radius的型別為:", type(radius))  # 整數型別(int)

    # 計算結果
    area = 3.14 * radius * radius
    print("您的臉有:", area, "那麼大")

程式列印結果
這裡寫圖片描述

@一次性接收使用者輸入的多個值

  • 使用者在輸入時,值之間需要使用英文逗號進行分隔;
  • input方法外部必須使用eval方法包裹,否則使用者輸入的資料只會被視為一個普通字串;
def getMoreInput():
    # 注意使用eval方法將多個值進行轉化
    width, height = eval(input("請輸入矩形寬高:"))
    print("width的型別為", type(width), "width=", width)
    print("height的型別為", type(height), "height=", height)
    print("矩形的面積為:", width * height, "平米")

    # 注意使用eval方法將多個值進行轉化
    a, b, c = eval(input("請輸入三個值:"))
    iMax = max(a, b, c)
    iMin = min(a, b, c)
    print("最大的值為:", iMax, "最小值為:", iMin)

程式執行結果
這裡寫圖片描述