2010-06-03 33 views
2

如何在irb提示符中很好地打印一個大的變量?我有一個包含許多變量的變量,打印輸出變得亂七八糟。如果我只是想要不帶它們的值的變量名?或者,我可以在單獨的一行上打印每一個,根據深度標籤?IRB和大變量?

回答

4

或者,我可以在一個單獨的行上打印每一個,根據深度標籤?

採用PP(代碼):

require 'pp' 
very_long_hash = Hash[(1..23).zip(20..42)] 
pp very_long_hash 
# Prints: 
{1=>20, 
2=>21, 
3=>22, 
4=>23, 
5=>24, 
6=>25, 
7=>26, 
8=>27, 
9=>28, 
10=>29, 
11=>30, 
12=>31, 
13=>32, 
14=>33, 
15=>34, 
16=>35, 
17=>36, 
18=>37, 
19=>38, 
20=>39, 
21=>40, 
22=>41, 
23=>42} 
2

如果你想要的東西,甚至比 「漂亮」 打印更真棒,你可以使用"awesome" print。對於真正的間隔體驗,在你的IRB上灑上一些hirbal medicine

Hirb,例如,渲染ActiveRecord對象(或幾乎任何數據庫訪問庫)作爲實際的ASCII表:

+-----+-------------------------+-------------+-------------------+-----------+-----------+----------+ 
| id | created_at    | description | name    | namespace | predicate | value | 
+-----+-------------------------+-------------+-------------------+-----------+-----------+----------+ 
| 907 | 2009-03-06 21:10:41 UTC |    | gem:tags=yaml  | gem  | tags  | yaml  | 
| 906 | 2009-03-06 08:47:04 UTC |    | gem:tags=nomonkey | gem  | tags  | nomonkey | 
| 905 | 2009-03-04 00:30:10 UTC |    | article:tags=ruby | article | tags  | ruby  | 
+-----+-------------------------+-------------+-------------------+-----------+-----------+----------+