如何从python中的raw_input创建一个列表?

时间:2014-04-12 05:05:39

标签: python list python-2.7 raw-input

所以我将raw_input作为一些列表的输入。

x= raw_input()

我输入1 2 3 4的位置 如果我只输入数字,我将如何将其转换为整数列表?

4 个答案:

答案 0 :(得分:22)

像这样:

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] 

答案 1 :(得分:10)

list = map(int,raw_input().split())

我们使用更高阶函数map来获取integers的列表。

答案 2 :(得分:3)

您可以使用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]
>>> 

答案 3 :(得分:1)

以下是用户输入列表的一些示例和简要说明:

您可能经常需要将数据从控制台读入列表的代码。您可以输入一个数据 每行项目并将其附加到循环中的列表中。例如,以下代码将每行一个十个数字读入一个列表。

lst1 = [] # Create an empty list
print("Enter 10 Numbers: ")
for i in range(10):
   lst1.append(eval(input()))

print(lst1)

有时在一行中用空格分隔输入数据会更方便。您可以 使用字符串的split方法从输入行中提取数据。例如,以下内容 代码读取十个数字,用空格从一行分隔成一个列表。

# 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的空格并返回列表中的项目。最后一行通过将项目转换为数字来创建数字列表。