更漂亮,缩进,漂亮的印刷
More beautiful, indented, pretty-printing
Array.inspect
returns 其输出为一条直线:
aoa = [ [1,2,3], [4,5,6] ]
puts aoa.inspect # => [[1, 2, 3], [4, 5, 6]]
有没有一种简单的方法来代替缩进输出?确切的格式(例如,第一个 [
之后是否有换行符)对我来说并不重要。我只是想让它更具可读性。
比较 Perl:
DB<2> print Dumper([[1,2,3],[4,5,6]])
$VAR1 = [
[
1,
2,
3
],
[
4,
5,
6
]
];
该解决方案也应支持哈希并妥善处理其他事情。
您可能想尝试 AwesomePrint gem 默认情况下 return 以下内容(实际输出是彩色的)并且可以自定义:
aoa = [ [1,2,3], [4,5,6] ]
#=> [
# [0] [
# [0] 1,
# [1] 2,
# [2] 3
# ],
# [1] [
# [0] 4,
# [1] 5,
# [2] 6
# ]
# ]
我想 JSON.pretty_generate
就是您要找的。
require 'json'
puts JSON.pretty_generate(["asdf", [1, 2, 3]])
输出:
[
"asdf",
[
1,
2,
3
]
]
对于哈希:
puts JSON.pretty_generate({a: 1, b: 2, c: {x: 1234}})
输出:
{
"a": 1,
"b": 2,
"c": {
"x": 1234
}
}
Array.inspect
returns 其输出为一条直线:
aoa = [ [1,2,3], [4,5,6] ]
puts aoa.inspect # => [[1, 2, 3], [4, 5, 6]]
有没有一种简单的方法来代替缩进输出?确切的格式(例如,第一个 [
之后是否有换行符)对我来说并不重要。我只是想让它更具可读性。
比较 Perl:
DB<2> print Dumper([[1,2,3],[4,5,6]])
$VAR1 = [
[
1,
2,
3
],
[
4,
5,
6
]
];
该解决方案也应支持哈希并妥善处理其他事情。
您可能想尝试 AwesomePrint gem 默认情况下 return 以下内容(实际输出是彩色的)并且可以自定义:
aoa = [ [1,2,3], [4,5,6] ]
#=> [
# [0] [
# [0] 1,
# [1] 2,
# [2] 3
# ],
# [1] [
# [0] 4,
# [1] 5,
# [2] 6
# ]
# ]
我想 JSON.pretty_generate
就是您要找的。
require 'json'
puts JSON.pretty_generate(["asdf", [1, 2, 3]])
输出:
[
"asdf",
[
1,
2,
3
]
]
对于哈希:
puts JSON.pretty_generate({a: 1, b: 2, c: {x: 1234}})
输出:
{
"a": 1,
"b": 2,
"c": {
"x": 1234
}
}