📅  最后修改于: 2023-12-03 14:53:16.704000             🧑  作者: Mango
有时,我们需要将一个字符串中的小数直接添加到整数中,例如将 "10.5" 添加到整数 5 中得到 15.5。Python 提供了一些方法来解决这个问题。
可以使用 Python 的内置函数 float()
来将字符串转换为浮点数。然后将浮点数与整数相加,最后得到浮点数结果。
s = "10.5"
i = 5
result = float(s) + i
print(result) # 15.5
可以使用 Python 的 re
模块提取字符串中的数字。使用正则表达式 "\d+(\.\d+)?"
可以匹配字符串中的数字,包括小数。使用 re.findall()
函数可以提取匹配到的所有数字,然后将其转换为浮点数并相加。
import re
s = "10.5"
i = 5
numbers = re.findall("\d+(\.\d+)?", s)
result = sum([float(n) for n in numbers]) + i
print(result) # 15.5
如果需要进行精确计算,可以使用 Python 的 decimal
模块。使用 Decimal()
函数将字符串转换为 Decimal 类型,然后使用 Decimal 类的 __add__()
方法进行加法运算。
from decimal import Decimal
s = "10.5"
i = 5
result = Decimal(s) + Decimal(i)
print(result) # 15.5
以上三种方法都可以将字符串中的小数添加到整数中。具体使用哪种方法取决于具体情况。在不需要精确计算的情况下,使用第一种方法最为简便。需要精确计算时,使用第三种方法最为适合。