我有一个浮点数,例如135.12345678910。我想将该值连接到一个字符串,但只需要135.123456789。使用打印,我可以通过执行以下操作轻松地做到这一点:

print "%.9f" % numvar
numvar是我的原始号码。是否有捷径可寻?

最佳答案

对于Python

# Option one
older_method_string = "%.9f" % numvar

# Option two
newer_method_string = "{:.9f}".format(numvar)

但请注意,对于高于3的Python版本(例如3.2或3.3),选项2为preferred

有关选项二的更多信息,建议使用this link on string formatting from the Python documentation

有关选项一的更多信息,this link will suffice and has info on the various flags

Python 3.6(于2016年12月正式发布)添加了f字符串文字see more information here,它扩展了str.format方法(使用花括号使f"{numvar:.9f}"解决了原始问题),即,
# Option 3 (versions 3.6 and higher)
newest_method_string = f"{numvar:.9f}"

解决了问题。查看@ Or-Duan的答案以获取更多信息,但是这种方法很快。

10-08 06:14