複数行(単一行/入力として読み取る)をSpyderコンソールに貼り付ける

Jan 14 2021

したがって、ユーザーから3つの入力(名前、年齢、場所)を取得する必要があるとします。

Jim Halpert
30
Scranton

そして私は次のようにコードを書きます:

name = input()
age = input()
location = input()

今では、1つずつ入力する代わりに、テキストファイルからコピーして貼り付けるだけですが、コンソールに貼り付けると、個別の入力として読み取られません。実際、それらは次のように表示されます。

Jim Halpert
...: 30
...: Scranton

私の質問は:Spyderにそれらを別々の入力として読み取らせる方法はありますか?ご協力ありがとうございました。

回答

2 RichardD Jan 14 2021 at 10:04

.splitlines()を使用できます


name, age, location  = input().splitlines()
print(name)
print(age)
print(location)

この場合、3つの変数すべても文字列として格納されます。あなたが年齢で数学をするならば、あなたはそれを変換する必要があるでしょう。

age = int(age)

たとえば、すべての入力がintである場合は、次のことができます。

x, y, z = [int(x) for x in input().splitlines()]