Ruby有一个`python -i`的版本吗?

sha*_*wat 0 ruby python command-line-arguments

我一直在寻找了一段时间,但我还没有发现在Ruby中像什么python-i标志.

如果我正在测试某些内容,我的常见行为是python使用-i标志运行未完成的脚本,以便我可以查看并使用每个变量中的值.

如果我尝试irb <file>,它仍然会终止EOF,而且,显然ruby <file>也不起作用.是否存在我缺少的命令行标志,或者其他方式可以实现此功能?

编辑:添加了我正在谈论的功能的解释.

Python中的当前行为

file.py

a = 1
Run Code Online (Sandbox Code Playgroud)

命令提示符

$ python -i file.py
>>> a
1
Run Code Online (Sandbox Code Playgroud)

如您所见,变量的值a也可在控制台中使用.

Hen*_*rik 5

您可以使用irb -r ./filename.rb(-r表示"要求"),基本上应该这样做python -i ./filename.py.

编辑以更好地回答精炼的问题:

实际上,irb -r ./filename.rb相当于运行irb和随后运行 irb(main):001:0> require './filename.rb'.因此,来自的局部变量filename.rb不会最终进入检查范围.

python -i ./filename.py似乎相当于添加binding.irb到文件的最后一行,然后运行它ruby ./filename.rb.似乎没有任何一个班轮相当于实现红宝石的这种确切行为.

  • @shashwat:局部变量 - 没有.但所有其他变量应该是可见的. (2认同)