Python计算一个字符串中所有数字的和实例
计算一个字符串中所有数字的和是常见的需求,在Python中通过正则表达式和内置函数可以轻松实现。
方法一:正则表达式
import re
def sum_of_numbers(text):
"""
计算字符串中所有数字的和
"""
return sum(map(int, re.findall(r'\d+', text)))
print(sum_of_numbers("Hello 123 World 456!")) # 输出 579
解释:
-
导入正则模块
re
。 -
定义
sum_of_numbers
函数,其中参数text
表示输入的字符串。 -
在
return
语句中,首先用re.findall
匹配字符串中的所有数字,返回一个列表,再利用map
函数将这些数字转化为整型,最后用sum
函数求总和。 -
在
print
函数中测试sum_of_numbers
函数的结果。
方法二:内置函数
def sum_of_numbers(text):
"""
计算字符串中所有数字的和
"""
return sum(int(i) for i in text if i.isdigit())
print(sum_of_numbers("Hello 123 World 456!")) # 输出 579
解释:
-
定义
sum_of_numbers
函数,其中参数text
表示输入的字符串。 -
在
return
语句中,利用for
循环和isdigit
函数判断每个字符是否是数字,是数字则转化为整型并加和。 -
在
print
函数中测试sum_of_numbers
函数的结果。
以上两种方法均可以实现计算一个字符串中所有数字的和,根据自己的需求和喜好选择适合的方法即可。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 计算一个字符串中所有数字的和实例 - Python技术站