Convert floating point number to a certain precision, and then copy to string(将浮点数转换为一定精度,然后复制为字符串)
问题描述
我有一个浮点数,比如 135.12345678910
.我想将该值连接到一个字符串,但只需要 135.123456789
.使用打印,我可以通过执行以下操作轻松做到这一点:
I have a floating point number, say 135.12345678910
. I want to concatenate that value to a string, but only want 135.123456789
. With print, I can easily do this by doing something like:
print "%.9f" % numvar
numvar
是我的原始号码.有没有简单的方法可以做到这一点?
with numvar
being my original number. Is there an easy way to do this?
推荐答案
使用 Python <3(例如 2.6 [见评论] 或 2.7),有两种方法.
With Python < 3 (e.g. 2.6 [see comments] or 2.7), there are two ways to do so.
# Option one
older_method_string = "%.9f" % numvar
# Option two
newer_method_string = "{:.9f}".format(numvar)
但请注意,对于高于 3 的 Python 版本(例如 3.2 或 3.3),选项二是 首选.
But note that for Python versions above 3 (e.g. 3.2 or 3.3), option two is preferred.
有关选项二的更多信息,我建议 this link on string formatting from thePython 文档.
For more information on option two, I suggest this link on string formatting from the Python documentation.
关于选项一的更多信息,这个链接就足够了,并且有各种标志的信息.
And for more information on option one, this link will suffice and has info on the various flags.
Python 3.6(2016 年 12 月正式发布),添加了 f
字符串字面量,在此处查看更多信息,它扩展了 str.format
方法(使用大括号,例如 f"{numvar:.9f}"
解决了原来的问题),也就是
Python 3.6 (officially released in December of 2016), added the f
string literal, see more information here, which extends the str.format
method (use of curly braces such that f"{numvar:.9f}"
solves the original problem), that is,
# Option 3 (versions 3.6 and higher)
newest_method_string = f"{numvar:.9f}"
解决问题.查看@Or-Duan 的答案以获取更多信息,但此方法快速.
solves the problem. Check out @Or-Duan's answer for more info, but this method is fast.
这篇关于将浮点数转换为一定精度,然后复制为字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:将浮点数转换为一定精度,然后复制为字符串
基础教程推荐
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 筛选NumPy数组 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01