📌  相关文章
📜  如何获取小数点后的数字 - Python (1)

📅  最后修改于: 2023-12-03 15:38:53.689000             🧑  作者: Mango

如何获取小数点后的数字 - Python

在Python中,我们可以通过以下几种方式获取小数点后的数字:

1. 内置函数 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
2. 数字类型的方法 strftime()

数字类型中的 strftime() 方法可以将数字格式化为指定的字符串,通过字符串操作获取小数点后的数字。

num = 3.1415926

# 将 num 格式化为字符串
str_num = '{:.2f}'.format(num)

# 获取小数点后两位
result = str_num.split('.')[1]

print(result) # 14

需要注意的是,字符串切片得到的是字符串类型的结果,如果需要进行数值计算,需要先将其转换为数字类型。

3. 正则表达式

使用正则表达式可以在字符串中匹配符合要求的子串,并返回匹配的结果。

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() 方法可以返回匹配到的所有结果,但是本例中只有一个匹配结果,因此直接取第一个即可。