2010-01-05 50 views
18

在交互式Python中工作时,我倾向于依赖内置的help()函数来告诉我预期和/或返回的内容,并打印出可能对我有帮助的任何文档。是否有一个等同于这个函数的Ruby?Ruby等于Python的帮助()?

我正在寻找一些我可以在irb中使用的东西。举例来说,在交互式Python我可以输入:

>>> help(1) 

这将然后打印

Help on int object: 

class int(object) | int(x[, base]) 
-> integer | | 

Convert a string or number to an integer, if possible. A ... 
+1

另请参阅:http://stackoverflow.com/questions/468421/ruby-equivalent-of-pythons-dir – 2013-05-21 20:19:19

回答

5

这对iPython的帮助绝对是一个可怜的表亲,也是我在移植到Ruby后错过的主要功能之一,但您也可以使用irb内的ri。我建议wirble gem作为一个简单的方法来设置。

+0

好的,我认为这会奏效。我可以通过 “Object.ri variable.class”获得文档,我可以通过“Object.ri variable.class.to_s +”.method获得方法doc。谢谢 – mozillalives 2010-01-05 23:23:36

+0

我输入'ri String'和它说“没有关于字符串的任何信息”。 – BornToCode 2016-06-12 01:01:44

5

Try using ri from the command line.

它需要一个类名,方法,或模块作为参数,并给你适当的文件。许多流行的宝石也带有这种形式的文档,所以它通常应该超出核心Ruby模块的范围。

+0

这很酷。但是这只能从命令行得到,对吗?我想知道如果我在irb中可以使用什么,并且想要获得有关特定变量的帮助。 – mozillalives 2010-01-05 23:00:15

0

应该是irb_help。但就像那篇文章中提到的那样,它在我的红宝石安装中也被破坏了。

3

它现在2014年底,在这里,只要你有这两种方式得到了Python help() *相似,在Ruby Docs安装:

  1. 从里面irb,您可以拨打help方法用字符串描述你在找什么。

    实施例1:help 'Array' Array类
    实施例2:help 'Array#each'Arrayeach方法。

  2. 在命令行,以外的irb,可以使用ri程序:

    实施例1:ri 'Array' Array类
    实施例2:ri 'Array#each'Arrayeach方法。

*不太好,因为Python的,但仍比没有

0

为了快速shell访问Ruby文档更好,只需键入里,然后你想了解更多有关(从方法你贝壳)。

例如:

ri puts

这必须在你的shell,不是你的IRB(交互式Ruby环境)

如果您的IRB环境是被解雇了,那么另一种方式,是简单地键入help后跟您想了解更多的有关方法如下:

help puts 

然而,这种假设你^ h ave正确地配置了您的Ruby环境,以便在irb中正常工作(帮助)。我通常只打开另外一个shell,并且当我对某个方法的某些方法或参数有疑问时,直接使用ri来快速访问。