だから私はraw_input
何らかのリストの入力として。
x= raw_input()
入力場所1 2 3 4
数字のみを入力している場合、どのように整数のリストに変換しますか?
このような:
string_input = raw_input()
input_list = string_input.split() #splits the input string on spaces
# process string elements in the list and make them integers
input_list = [int(a) for a in input_list]
list = map(int,raw_input().split())
高次関数map
を使用して、integers
のリストを取得しています。
eval
を使用して以下を実行できます。
lst = raw_input('Enter your list: ')
lst = eval(lst)
print lst
これは次のように実行されます。
>>> lst = raw_input('Enter your list: ')
Enter your list: [1, 5, 2, 4]
>>> lst = eval(lst)
>>> print lst
[1, 5, 2, 4]
>>>
ユーザーからのリストの入力に関するいくつかの例と簡単な説明を次に示します。
多くの場合、コンソールからリストにデータを読み込むコードが必要になる場合があります。 1行に1つのデータ項目を入力して、ループ内のリストに追加できます。たとえば、次のコードは1行に1つずつ10個の数字をリストに読み込みます。
_lst1 = [] # Create an empty list
print("Enter 10 Numbers: ")
for i in range(10):
lst1.append(eval(input()))
print(lst1)
_
データをスペースで区切って1行で入力した方が便利な場合があります。文字列のsplitメソッドを使用して、入力行からデータを抽出できます。たとえば、次のコードは、1行からスペースで区切られた10個の数字をリストに読み込みます。
_# Read numbers as a string from the console
s = input("Enter 10 numbers separated by spaces from one line: ")
items = s.split() # Extract items from the string
lst2 = [eval(x) for x in items] # Convert items to numbers
print(lst2)
_
input()
を呼び出すと、文字列が読み取られます。 s.split()
を使用すると、文字列s
からスペースで区切られたアイテムが抽出され、リスト内のアイテムが返されます。最後の行では、アイテムを数字に変換して数字のリストを作成します。