📅  最后修改于: 2023-12-03 15:38:53.689000             🧑  作者: Mango
在Python中,我们可以通过以下几种方式获取小数点后的数字:
round()
round()
函数用于将传入的数字四舍五入到指定的小数位数。如果不指定小数位数,则默认为 0。
num1 = 3.1415926
num2 = 2.7182818
# 将 num1 四舍五入到小数点后两位
result1 = round(num1, 2)
# 将 num2 四舍五入到整数
result2 = round(num2)
print(result1) # 3.14
print(result2) # 3
strftime()
数字类型中的 strftime()
方法可以将数字格式化为指定的字符串,通过字符串操作获取小数点后的数字。
num = 3.1415926
# 将 num 格式化为字符串
str_num = '{:.2f}'.format(num)
# 获取小数点后两位
result = str_num.split('.')[1]
print(result) # 14
需要注意的是,字符串切片得到的是字符串类型的结果,如果需要进行数值计算,需要先将其转换为数字类型。
使用正则表达式可以在字符串中匹配符合要求的子串,并返回匹配的结果。
import re
num = 3.1415926
# 将 num 转换为字符串
str_num = str(num)
# 匹配小数点后两位数字
pattern = r'\.\d{2}'
result = re.findall(pattern, str_num)[0]
print(result) # .14
正则表达式的匹配规则为 \.\d{2}
,表示匹配一个小数点以及后面的两位数字。findall()
方法可以返回匹配到的所有结果,但是本例中只有一个匹配结果,因此直接取第一个即可。