Top > Python > input()

「input()」:ユーザー入力

ユーザーからのレスポンスを受け取る関数です。
見てみましょう。

name = input("What's your name?")
print("Hi! " + name)
↓"あちゃ"を入力した場合
>>>
What's your name?あちゃ
Hi! あちゃ

「int()」:数値入力

ユーザーからの入力を受けると、それは文字列となります。
受けた文字列で何かを計算しようとする場合、文字列なので計算はエラーとなりますので、文字列を数値に変換させる必要があります。関数は「int()」です。

age = input("How old are you?")
diff = 100 - age
print("私より" + str(diff) + "歳若い")
>>>
  diff = 100 - age
TypeError: unsupported operand type(s) for -: 'int' and 'str'

計算する時は、数値に変換して実行します。

diff = 100 - int(age)
print("私より" + str(diff) + "歳若い"
↓"12"を入力した場合
>>>
私より88歳若い

「float()」:浮動小数点の場合

km = input("kmをマイルに変換→")
diff = km * 1.60934
print(km + "kmは " + "str(diff) + " マイルです。")
>>>
  diff = km * 1.60934
TypeError: can't multiply sequence by non-int of type 'float'

浮動小数点時は、float型に変換する必要があります。

diff = float(km) * 1.60934
print(km + "kmは " + "str(diff) + " マイルです。")
>>>
kmをマイルに変換→20
20kmは 32.1868 マイルです。

ちなみに↓のような記述も可能です。
km = float(input("kmをマイルに変換→"))
diff = km * 1.60934
print(str(km) + "kmは " + str(diff) + " マイルです。")
または、
print("{0}kmは{1} マイルです。".format(km,diff))
>>>
kmをマイルに変換→10
10kmは 16.0934 マイルです。

「type()」:型の問い合わせ関数

print(type("acha"))
print(type(100))
print(type(1.0))
>>>
<class 'str'>
<class 'int'>
<class 'float'>


一覧へ戻る




Copyright © 2015 AchaPorutePiipo All Rights Reserved.