为什么在 Ruby 中使用 DBM 时,db[1] = 2 可以,但 print db[1] 会出错?

发布于 2024-08-12 10:26:29 字数 224 浏览 1 评论 0原文

在Ruby上,当使用DBM时,

require "dbm"

db = DBM.open("somedata")
db[1] = 2   # ok
p db[1]     # gives error

有人知道db[1] = 2是可以的,但是打印出db[1]会出错吗?

如果它要求 db["1"] 有效,那么为什么它不适用于两种情况而只适用于一种情况?

On Ruby, when using DBM

require "dbm"

db = DBM.open("somedata")
db[1] = 2   # ok
p db[1]     # gives error

does anyone know db[1] = 2 is ok, but printing out db[1] will give error?

If it requires db["1"] to be valid, then how come it doesn't apply to both cases but to one case only?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

楠木可依 2024-08-19 10:26:29

dbm 将键和值转换为字符串,因此:

p db["1"]

给出

"2"

dbm convert key and value to string, so :

p db["1"]

give

"2"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文