-5

如果我在 python 中有几个字符串的列表,并且每个字符串都包含一个值。如何获取这些值并将它们打印到列表中?示例:字符串可能是“abc def g T = 5 hij”。除数字外,所有字符串都相同。

4

2 回答 2

2

您可以使用正则表达式。假设您的字符串列表被称为items

result = [int(re.search(r'\d+', x).group(0)) for x in items]

如果不能保证该值是字符串中唯一的数字,只需使正则表达式更具体;说,

re.search(r'T = (\d+)', x).group(1)
于 2012-07-27T23:20:37.513 回答
0

一种方法

使用split()字符串上的方法将其拆分为列表。

newList = "abc def g T = 5 hij".split()

如果您需要拆分除空格以外的其他内容,请在split(). 例如,

"abc def g T = 5 hij".split("=")[1]

在等号上拆分字符串。

因此,根据我对您的情况的了解,这样的事情应该可以解决问题:

listOfVals = [valStr.split("=")[1] for valStr in strList]

wherelistOfVals是输出列表,strList是“几个字符串的列表”。

笔记

我应该注意,这仅适用于您想要的数据在 first 和 second 之间的字符串=,但是我真的不知道您的字符串的细节。不过,这应该让您了解如何解决问题。

于 2012-07-27T23:10:32.603 回答