📜  F-Strings 小数位数 - Python (1)

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

F-Strings 小数位数 - Python

在 Python 3.6 中,引入了 F-Strings (格式字符串)作为新的一种字符串格式化方法,相较于之前的格式化方法有着更好的可读性以及更简洁的语法。本文将会介绍 F-Strings 中如何控制小数位数。

基本用法

F-Strings 的使用方法非常简单,只需要在字符串前面添加 fF 即可将其中的变量和表达式嵌入到字符串中。例如:

name = "Alice"
age = 25

print(f"My name is {name}. I'm {age} years old.")

输出结果为:

My name is Alice. I'm 25 years old.
控制小数位数

在输出浮点数时,我们可能需要控制其小数位数。在 F-Strings 中,可以使用格式化迷你语言(Format mini-language)来进行设置。格式化迷你语言可以应用于任何嵌入到 F-Strings 中的表达式,包括变量、函数调用、算术运算等。

固定小数位数

要设置固定小数位数,可以在 ${} 中的表达式后添加格式化迷你语言,如下所示:

a = 3.1415926
print(f"a = {a:.2f}")

输出结果为:

a = 3.14

其中,.2f 表示输出浮点数时,保留 2 位小数。这里的 f 表示浮点数类型。

自适应小数位数

有时候我们需要根据数值的大小来自适应小数位数,比如数值较大时需要保留较少的小数位数,数值较小时需要保留较多的小数位数。这时候我们可以使用格式化迷你语言中的 gG,它们可以在数值较大时自动去掉多余的小数位数,在数值较小时自动保留较多的小数位数。

a = 1234.5678
b = 0.0012345678

print(f"a = {a:.2G}")
print(f"b = {b:.2G}")

输出结果为:

a = 1.2E+03
b = 0.0012

其中,.2G 表示自适应小数位数的格式化输出。

科学计数法

在 F-Strings 中,可以使用格式化迷你语言来输出科学计数法表示的浮点数。

a = 123.456
print(f"a = {a:.2e}")

输出结果为:

a = 1.23e+02

其中,.2e 表示输出浮点数的科学计数法形式,并保留 2 位小数。

小结

本文介绍了 F-Strings 中如何控制小数位数。通过使用格式化迷你语言,我们可以轻松地控制浮点数的小数位数,并自适应数值大小来调整小数位数。F-Strings 作为一种新的字符串格式化方法,具有更好的可读性和更简洁的语法,是 Python 中不可或缺的一部分。