📅  最后修改于: 2023-12-03 15:19:19.672000             🧑  作者: Mango
在处理字符串时,经常会遇到需要从字符中提取数字的情况。本案例介绍了如何在字符串列表中提取嵌入数字,并计算它们的和。
通常,字符串列表中的数字都是以字符串的形式嵌入的。为了提取它们,可以使用正则表达式。
以下是一个示例代码片段:
import re
str_lst = ['abcd123', '12efg', '1234']
pattern = '\d+'
nums_lst = []
for s in str_lst:
match = re.search(pattern, s)
if match:
nums_lst.append(int(match.group()))
print(nums_lst)
在这个示例中,正则模式 \d+
表示一个或多个数字。在循环中,对于每个字符串,我们使用 search() 函数在其中查找匹配项。如果找到,则将其转换为整数并添加到 nums_lst 中。
一旦我们有了 nums_lst 数组,计算这些数字的和就很简单了。只需要使用 Python 内置函数 sum() 即可。
以下是计算数字和的代码片段:
nums_sum = sum(nums_lst)
print(nums_sum)
以下是完整的代码示例,将从字符串列表中提取嵌入数字并计算它们的总和。
import re
str_lst = ['abcd123', '12efg', '1234']
pattern = '\d+'
nums_lst = []
for s in str_lst:
match = re.search(pattern, s)
if match:
nums_lst.append(int(match.group()))
nums_sum = sum(nums_lst)
print(nums_sum)
运行以上程序,输出应该是:
1357
这个示例程序演示了如何从字符串中提取嵌入的数字并计算它们的和。使用正则表达式可以很容易地实现这一点,这是 Python 中非常强大和灵活的工具之一。