使用 Ruby 在 YAML 哈希中使用浮点数是否安全?

Is it safe to use floats in YAML hashes with Ruby?

提问人:Andrew Grimm 提问时间:1/3/2012 更新时间:1/3/2012 访问量:255

问:

如果我有一个像这样的 YAML 文件

--- 
2.1: my product version

没有任何引号,Ruby 会将其视为 Float(至少在 Syck 下 - 我不确定 Psych)。2.1

使用 Float 作为哈希键是否有任何风险,只要该键的所有其他出现都来自 YAML 文件或来自 Ruby 的文字?

Ruby 哈希 YAML 浮动精度

评论

0赞 mu is too short 1/3/2012
版本“数字”实际上不是浮点数,甚至不是任何类型的数字,它更像是以特殊方式()编写的整数序列()。因此,问题背后的问题没有实际意义:)[2,1,11]2.1.11
0赞 Andrew Grimm 1/3/2012
@muistooshort:我的问题是我能不能懒惰,不用引号来转义它。
0赞 Translunar 9/29/2013
我没有尝试过,但它会导致问题(至少在 Psych 中):HashRBTree'@9.884112959068247e-09' is not allowed as an instance variable name

答: 暂无答案