在Python中处理非常小的数字

2023-11-26

我目前在我的 python 程序中处理非常小的数字,例如

x = 200 + 2e-26

一种解决方案是使用对数值,这会增加浮点值的范围。问题是我也必须对这些值进行快速傅立叶变换,因此使用对数方法是不可用的(并且使用Decimal-模块都不是)。还有其他方法可以解决这个问题吗?

编辑:我的问题decimal模块是:如何处理虚值?我试过a = Decimal(1e-26)+Decimal(1e-26*1j) and a = Decimal(1e-26)+Decimal(1e-26)*1j,并且两种方法都失败(根据请求出错)。


考虑尝试一下mpmath package.

>>> from mpmath import mpf, mpc, mp
>>> mp.dps = 40
>>> mpf(200) + mpf(2e-26) + mpc(1j)
mpc(real='200.0000000000000000000000000200000000000007', imag='1.0')

大部分准确并且可以处理复杂的数字,更多详细信息请参阅文档.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Python中处理非常小的数字 的相关文章

随机推荐

  • Matplotlib 表格格式化列宽

    我希望格式化表的一列 但是当迭代行时 每次迭代后列宽度都会发生变化 源代码 def p create table self events dates rows columns portfolio param events Dict Date
  • 使 C 模块变量以只读方式访问

    我想为模块变量提供客户端模块的只读访问权限 几种解决方案 1 最常见的一种 module a c static int a int get a void return a module a h int get a void 这使得每个变量共
  • JMeter - 使用 POST 变量发送 HTTP 请求时遇到问题?

    我正在尝试加载测试一个从存档数据库中获取记录的 java servlet Servlet 的工作原理如下 1 从 HTTP 标头读取 post 变量 2 使用变量查询数据库 3 返回 XML 我设置了一个测试 我想用 post 变量触发 H
  • 如何使用 NextJS Links 处理电话号码?

    我有一个使用 Next Link 的 Link 组件 我传入的电话号码格式如下 tel 15555555555 但是我收到错误 Invalid href passed to router tel 15555555555 不支持电话号码吗 N
  • Swift 和 NSUserDefaults - 当用户默认为空时 EXC_BAD_INSTRUCTION

    我正在将我的一个项目逐个文件转换为 Swift 我对 NSUserDefaults 有一个奇怪的行为 我使用 NSString 而不是 String 来与其他代码兼容 var selectedMonth NSString get retur
  • 将 CGRect 标准化为 0 到 1 之间

    正常化的最佳方法是什么CGRect值使其介于 0 和 1 单位坐标系 之间 一个非常简洁的方法是 CGAffineTransform t CGAffineTransformMakeScale 1 0 parentRect size widt
  • Java 连接池

    我搜索了连接池并阅读了相关内容 如果我理解正确的话 连接池就像打开连接的集合 如果建立或创建了连接 则应将其添加到连接池中 如果该连接已关闭 则应将其从连接池中删除 当它打开时 我可以一次又一次地使用它 在阅读这些有关连接池的教程和解释时
  • PyQt4 和 PyQt5 中的 QFileDialog 字符串有区别吗?

    我有一段使用 Python3 和 PyQt5 打开 QFileDialog 的代码块 from PyQt5 QtWidgets import QApplication QWidget QPushButton QFileDialog impo
  • 如何使 JSP 标记文件不忽略所有空格?

    我真的被这个难住了 我想输出一个列表 并让标记文件处理逗号 单数与复数等 但是当我显示列表时 它完全忽略空格 所以一切都像这样一起运行 我尝试使用 HTML 实体 thinsp ensp 和 emsp 我不能使用 nbsp 这些必须被破坏
  • 如何打印我的单选按钮并在文本区域中输入类型文本?

    我有带有四个单选按钮和一个输入类型文本的调查问卷 按顺序打印 不删除前一张 var todos input type radio todos on click gt var newText Array from todos forEach
  • 如何从express重定向到react-router?

    我正在将身份验证添加到我的应用程序中 该应用程序使用react router 我已经在之后设计了客户端路由认证流程示例在react router中 但使用passport而不是示例使用的localstorage 这一切都很好 下一步是保护我
  • 如何在Inno Setup中设置安装文件夹的权限

    我正在使用 Inno Setup 创建应用程序的安装程序 第一次运行时 我的应用程序正在创建一个 SQLite 数据库 但当用户没有修改安装文件夹的权限时 它无法实现这一点 我设法设置文件的权限 Files Source D jar Des
  • 使用 Vuforia 和 Unity 仅创建一次具有地平面检测的对象

    我正在尝试使用 Unity 和 Vuforia 创建 AR 应用程序 我有一个 3D 模型 需要在检测到地平面时生成 但这只需要发生一次 Vuforia 的工作方式是 当检测到新飞机时 它会继续生成对象 所以我需要做的是要么只检测一次平面
  • 如何查询非数字字段上的“之间”数字数据?

    我刚刚在数据库中发现了一个查询失败 导致报告失败 查询的基本要点 Select From table Where IsNull myField lt gt And IsNumeric myField 1 And Convert int my
  • 使用过滤查询*:*时Solr默认是如何排序的?

    我们当前的页面设置未应用过滤器 方面 查询 它是所有内容的列表 使用寻呼机 过滤器查询类似于 任何领域的任何内容 我无法弄清楚内容是如何排序的 它说这是 相关性 但是当您选择所有内容时 这意味着什么 我做了一些快速测试 它似乎没有按内容修改
  • 如何在批处理文件中将变量与字符串或变量连接

    我想将变量与字符串连接起来 在第 7 行到第 11 行中 我尝试连接 somevariable 使用字符串或使用 P 变量 但这似乎不起作用 IE 当前文件夹中有文件 0 1 en pdf 该脚本将文件名快捷方式设置为第一位数字 之后我想用
  • html 表格行的行计数器

    我在 JSF Web 应用程序中有 HTML 表 我正在使用动态生成行
  • 如何在 Kotlin 中比较 Short 和 Int?

    我有一个Short我需要检查其值的变量 但编译器抱怨说Operator cannot be applied to Short and Int 当我进行简单的等于检查时 val myShort Short 4 if myShort 4 lt
  • 如何更改 DatagridView 中的标题文本 - 在代码 C# 中?

    如何更改标题文本DatagridView以及如何在 C 代码中添加或删除列 如果您使用数据绑定到类型和自动生成的列 则这就是 DisplayName i e DisplayName Last name public string LastN
  • 在Python中处理非常小的数字

    我目前在我的 python 程序中处理非常小的数字 例如 x 200 2e 26 一种解决方案是使用对数值 这会增加浮点值的范围 问题是我也必须对这些值进行快速傅立叶变换 因此使用对数方法是不可用的 并且使用Decimal 模块都不是 还有