将float转换为str时如何检查默认的十进制精度? - python

float转换为str时,我可以指定要显示的小数位数

'%.6f' % 0.1
> '0.100000'
'%.6f' % .12345678901234567890
> '0.123457'

但是当在python 2.7中简单地在str上调用float时,它似乎默认为最大12个小数点

str(0.1)
>'0.1'
str(.12345678901234567890)
>'0.123456789012'

定义/记录的最大小数位数在哪里?我可以通过编程方式获得此号码吗?

参考方案

显示的小数位数将有很大的不同,并且没有一种方法可以预测纯Python中显示的小数位数。诸如numpy之类的某些库允许您设置输出的精度。
这仅仅是因为limitations of float representation。
链接的相关部分讨论了Python如何选择显示浮点数。

Python仅输出与机器存储的二进制近似值的真实十进制近似的十进制近似值
Python通过显示舍入值来保持数字位数的可管理性

现在,这里有可能重叠:

有趣的是,有许多不同的十进制数共享相同的最接近的近似二进制分数

在Python 3.1中更改了选择要显示的十进制值的方法(但是最后一句话暗示这可能是实现细节)。

例如,数字0.1和0.10000000000000001都是
近似为3602879701896397/2 **55。由于所有这些十进制
值具有相同的近似值,其中任何一个都可以是
在仍保留不变eval(repr(x))== x的情况下显示
从历史上看,Python提示和内置的repr()函数会
选择一个有17个有效数字的数字0.10000000000000001。
从Python 3.1开始,Python(在大多数系统上)现在能够
选择其中最短的一个,并仅显示0.1。

在返回'Response'(Python)中传递多个参数 - python

我在Angular工作,正在使用Http请求和响应。是否可以在“响应”中发送多个参数。角度文件:this.http.get("api/agent/applicationaware").subscribe((data:any)... python文件:def get(request): ... return Response(seriali…

Python exchangelib在子文件夹中读取邮件 - python

我想从Outlook邮箱的子文件夹中读取邮件。Inbox ├──myfolder 我可以使用account.inbox.all()阅读收件箱,但我想阅读myfolder中的邮件我尝试了此页面folder部分中的内容,但无法正确完成https://pypi.python.org/pypi/exchangelib/ 参考方案 您需要首先掌握Folder的myfo…

Python GPU资源利用 - python

我有一个Python脚本在某些深度学习模型上运行推理。有什么办法可以找出GPU资源的利用率水平?例如,使用着色器,float16乘法器等。我似乎在网上找不到太多有关这些GPU资源的文档。谢谢! 参考方案 您可以尝试在像Renderdoc这样的GPU分析器中运行pyxthon应用程序。它将分析您的跑步情况。您将能够获得有关已使用资源,已用缓冲区,不同渲染状态上…

R'relaimpo'软件包的Python端口 - python

我需要计算Lindeman-Merenda-Gold(LMG)分数,以进行回归分析。我发现R语言的relaimpo包下有该文件。不幸的是,我对R没有任何经验。我检查了互联网,但找不到。这个程序包有python端口吗?如果不存在,是否可以通过python使用该包? python参考方案 最近,我遇到了pingouin库。

Python:图像处理可产生皱纹纸效果 - python

也许很难描述我的问题。我正在寻找Python中的算法,以在带有某些文本的白色图像上创建皱纹纸效果。我的第一个尝试是在带有文字的图像上添加一些真实的皱纹纸图像(具有透明度)。看起来不错,但副作用是文本没有真正起皱。所以我正在寻找更好的解决方案,有什么想法吗?谢谢 参考方案 除了使用透明性之外,假设您有两张相同尺寸的图像,一张在皱纹纸上明亮,一张在白色背景上有深…