2010-01-05 115 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來快速訪問。