python - 浮点值作为字典键

标签 python dictionary floating-point key

我正在开发一个用于分析微量滴定板的类(class)。样本在单独的文件中描述,条目用于有序字典。其中一个关键是 pH,通常以 float 形式给出。例如 6.8

我可以使用 Decimal('6.8') 将其作为十进制导入,以避免将 float 作为 dict 键。另一种解决方案是将点替换为例如 6p8 之类的 p 或在我的示例描述中写 6p8 ,从而从一开始就消除问题。但这会在以后造成麻烦,因为我无法在我的图中绘制 6p8 的 pH 值。

你会如何解决这个问题?

最佳答案

使用 float 作为字典键没有问题。

只需 round(n, 1) 将它们标准化为您的键空间。例如。

>>> hash(round(6.84, 1))
3543446220
>>> hash(round(6.75, 1))
3543446220

关于python - 浮点值作为字典键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23721230/

相关文章:

floating-point - 转换为 IEEE 754 单精度浮点格式帮助

c - printf double 输出不正确

python - 测试抛出 IntegrityError 的 SQLAlchemy 代码的正确方法是什么?

替换\t\t 的 Python 代码无法替换\t\r

python - 使用 python 字典插入到 mysql

Python 有选择地从字典中查找并打印值

java - 在 Java 中从 Map 分离 Collection 的最佳方法是什么?

python - 如何使图像之间完美匹配?

C# 列表作为字典键

javascript - JavaScript 中的 ParseFloat 函数