将一个浮点数写入文本文件,并保留小数点后两位且转换为百分制,有几种不同的写法。以下是几种常见的实现方式:
- 使用字符串格式化 (f-string)
value = 0.12345
with open('output.txt', 'w') as f:
f.write(f"{value * 100:.2f}%\n") # 将值乘以100并保留两位小数
- 使用 .format() 方法
value = 0.12345
with open('output.txt', 'w') as f:
f.write("{:.2f}%\n".format(value * 100)) # 同样将值乘以100并保留两位小数
- 使用 round() 函数
value = 0.12345
with open('output.txt', 'w') as f:
f.write(str(round(value * 100, 2)) + "%\n") # 使用 round 保留两位小数
- 使用 “%f” 格式化字符串
value = 0.12345
with open('output.txt', 'w') as f:
f.write("%.2f%%\n" % (value * 100)) # 使用百分号转义符 %%,格式化为两位小数
- 使用 Decimal 进行精确控制
from decimal import Decimal
value = Decimal(0.12345)
with open('output.txt', 'w') as f:
f.write(f"{(value * 100).quantize(Decimal('1.00'))}%\n") # Decimal 处理浮点数精度