如何将空格分隔的整数输入转换为整数列表?将字符串列表转换为整数列表
例输入:
list1 = list(input("Enter the unfriendly numbers: "))
转换例:
['1', '2', '3', '4', '5'] to [1, 2, 3, 4, 5]
如何将空格分隔的整数输入转换为整数列表?将字符串列表转换为整数列表
例输入:
list1 = list(input("Enter the unfriendly numbers: "))
转换例:
['1', '2', '3', '4', '5'] to [1, 2, 3, 4, 5]
map()
是你的朋友,它适用给出第一个参数列表中的所有项目的功能。
map(int, yourlist)
因为它映射每个迭代,你甚至可以这样做:
map(int, input("Enter the unfriendly numbers: "))
这(在python3.x)返回一个地图对象,它可以被转换成一个列表。 我假设你使用python3,因为你使用了input
而不是raw_input
。
+ 1但你的意思是'map(int,yourlist)'?当然, – 2012-04-27 13:48:21
已经编辑过了。 – ch3ka 2012-04-27 13:48:36
你是指'map(int,input().split())',还是py3k自动将空格分隔的输入转换成列表? – quodlibetor 2012-04-27 14:23:00
你可以试试:
x = [int(n) for n in x]
这不起作用。 'int'不是字符串的一种方法。 – 2012-04-27 13:49:06
对不起,我编辑了它......这实际上是我的意思:) – Silviu 2012-04-27 13:51:52
这没有错,但我通常不会重复使用'x'。 – 2012-04-27 13:53:54
的方法之一是使用列表理解:
intlist = [int(x) for x in stringlist]
+1,'[int(x)for input()。split()]'符合OP的规格。 – georg 2012-04-27 14:34:23
只是好奇你得到的方式 '1', '2', '3',' 4'而不是1,2,3,4。
>>> list1 = list(input("Enter the unfriendly numbers: "))
Enter the unfriendly numbers: 1, 2, 3, 4
>>> list1 = list(input("Enter the unfriendly numbers: "))
Enter the unfriendly numbers: [1, 2, 3, 4]
>>> list1
[1, 2, 3, 4]
>>> list1 = list(input("Enter the unfriendly numbers: "))
Enter the unfriendly numbers: '1234'
>>> list1 = list(input("Enter the unfriendly numbers: "))
Enter the unfriendly numbers: '1', '2', '3', '4'
>>> list1
['1', '2', '3', '4']
好了,一些代码
>>> list1 = input("Enter the unfriendly numbers: ")
Enter the unfriendly numbers: map(int, ['1', '2', '3', '4'])
>>> list1
[1, 2, 3, 4]
这个工程:
nums = [int(x) for x in intstringlist]
l=['1','2','3','4','5']
for i in range(0,len(l)):
l[i]=int(l[i])
您的缩进被打破。 – 2012-07-24 06:45:15
说,有一个名为为List_Of_Strings和输出是一个名为的整数列表字符串列表list_of_int。 map函数是一个可用于此操作的内置python函数。
'''Python 2.7'''
list_of_strings = ['11','12','13']
list_of_int = map(int,list_of_strings)
print list_of_int
[转换所有字符串在列表中INT]可能的复制(http://stackoverflow.com/questions/7368789/convert-all-strings-in-a-list-to-int) – 2016-04-15 07:13:20