print(f"一共耗费了 {(stop - start):2f} 秒")语句中的:2f是啥意思?
import timedef time_master(func):
def call_func():
print("开始运行程序...")
start = time.time()
func()
stop = time.time()
print("结束程序运行")
print(f"一共耗费了 {(stop - start):2f} 秒")
return call_func
@time_master# 语法糖
def myfunc():
time.sleep(2)
print("I love FishC.")
myfunc()
------------------------------------------------------------------------------------------------------------
代码如上,我的问题是:print(f"一共耗费了 {(stop - start):2f} 秒")语句中的:2f是啥意思? 保留两位小数 格式化字符串中 '{:.2f}' 表示保留两位小数
而 '{:2f}' 中的 2 并不表示保留几位小数,它表示如果替换成字符串的部分如果长度小于 2 ,在前面补空格直到长度为 2 。此时 f 默认保留 6 位小数。例如我们修改代码为 print(f"一共耗费了 {(stop - start):10f} 秒"),输出(用*表示替代产生的空格以便更清楚)
开始运行程序...
I love FishC.
结束程序运行
一共耗费了 **2.005115 秒
如果你要保留两位小数,请使用print(f"一共耗费了 {(stop - start):.2f} 秒") 还可以试试format函数{:10_256:}
print("{:.2f}".format(stop-start))
页:
[1]