3

我将如何去取一个字符串:</p>

("h1", "h2", "h3, "h4")

并用数字代替这些值1, 2, 3, 4

相应地,我将如何执行相同的操作但在列表中?

4

2 回答 2

5
 to_replace = ["h1","h2","h3","h4"]
 replaced = [ int(s.replace("h","")) for s in to_replace ]

如果这是你想要的。

这不是很清楚。我假设您的输入实际上不是一个字符串"(\"h1\", \"h2\", \"h3\", \"h4\")",而是一个字符串列表。

而且我不确定您的第二个问题是什么意思,因为它似乎与第一个问题相同。

我会相应地更新我的答案=)

于 2010-07-01T18:58:23.320 回答
3

这将删除每个非数字字符(不仅h):

>>> s = ["h1", "h2" , "h3" , "h4"]
>>> [int(filter(lambda c: c.isdigit(), x)) for x in s]
[1, 2, 3, 4]

或者

>>> s = ["x1", "b2" , "c3" , "h4"]
>>> [int(filter(lambda c: c.isdigit(), x)) for x in s]
[1, 2, 3, 4]
于 2010-07-01T19:45:37.840 回答