将字符串值转换为列表 python

Convert string values to list python

我正在尝试找出一种简单的方法来从使用 readline() 读取的文件中获取一行中的字符串。具体来说,有多个整数值是我 运行 遇到问题的地方:

10 20 30 

我希望将上面的值转换为单独的整数列表:

[10, 20, 30] 

然后这些值将在单独的 class 中求和。我确定我可以在这里做一些简单的事情,但我只是在画一个空白。提前致谢!

这里有更多关于我正在尝试做的事情的背景信息。我将整数传递到 class 中的 updateMany 方法:

vals = infile.readline() 
a.updateMany(int(vals.split())

updateMany() 获取列表并对它们求和,将它们添加到 class 的本地列表变量中。

例如:

thelist = [int(s) for s in thestring.split()]

您可以使用:

x = [int(i) for i in "10 20 30".split()]

然后

sum(x)

您使用 map()。它从列表中获取项目并对它们应用给定的函数。

>>> string = "10 20 30"
>>> map(int, string.split())
[10, 20, 30]

如果只使用space作为分隔符,可以使用字符串对象的split方法:

>>> num_line = '10 20 30'
>>> [int(num) for num in num_line.split() if num]
[10, 20, 30]

如果您的分隔符不止一个字符,例如“,”和“.”或者 space,你可以使用 re.split():

>>> import re
>>> re_str = "[,. ]"
>>> num_line = '10, 20, 30.'
>>> [int(num) for num in re.split(re_str, num_line) if num]
[10, 20, 30]

感谢大家的帮助和解决此问题的不同方法。我最终使用以下方法来获取我的值:

intList = [int(i) for i in vals.split(sep=' ')]
a.updateMany(intList)

干杯!