为什么交互式红宝石将停止显示结果?

问题描述 投票:0回答:2

我只是在玩交互式红宝石。

在开始附近(第138行),我做到了

.  irb(main):138:0> ['rock','paper','scissors'].index('paper')
=> 1

并且上述方法有效

然后,我尝试了一堆139-147行以尝试使它更适应该语言

然后我没有得到结果,我尝试了一些我认为可以工作的甚至更简单的方法,148-154,但没有得到任何结果。

因此,虽然我不确定是什么,但看起来我的命令之一可能已阻止它显示结果。

我想让它再次显示结果。我想我可以尝试退出然后再回去,但是我宁愿不这样做,

.  irb(main):138:0> ['rock','paper','scissors'].index('paper')
=> 1
irb(main):139:0> a=[1,2,3
irb(main):140:1> a
irb(main):141:1> a=[1.2.3]
irb(main):142:1> a[0]
irb(main):143:1> a(0)
irb(main):144:1> a=[1,2,3]
irb(main):145:1> a(1)
irb(main):146:1> puts a(1)
irb(main):147:1> puts a[1]
irb(main):148:1> a
irb(main):149:1> a=[1,2,3]
irb(main):150:1> a
irb(main):151:1> h={4=>4}
irb(main):152:1> h
irb(main):153:1> puts 6
irb(main):154:1>

如果有什么不同,这是我的版本号,操作系统是Windows。

C:\blah>ruby -v
ruby 2.1.6p336 (2015-04-13 revision 50298) [i386-mingw32]

C:\blah>
ruby irb
2个回答
2
投票

由于此行:

irb(main):139:0> a=[1,2,3

您还没有使用]来关闭数组。 :1中的irb(main):154:1>清楚表明您在嵌套表达式中。

如果输入另一个],则会收到一个很大的语法错误,因为在此之前输入的所有内容都不是有效的数组语法,但是您可以继续。


0
投票

[注意,自2019年末以来,assignment does not output any more the value in irb。这是一个新情况,其中Interactive Ruby(irb)停止显示结果。

© www.soinside.com 2019 - 2024. All rights reserved.