Ruby: Как заставить IRB распечатать структуру для Массивов и Хешей

Вы имеете в виду это?

Использование контекста селектора и троичного оператора для упрощения кода

[110 ]


Deck Area and Cost

Please enter the following deck information.

 SQ. FT.

67
задан neezer 31 March 2009 в 21:05
поделиться

3 ответа

Можно или использовать inspect метод:

a=["value1", "value2", "value3"]
puts a.inspect

Или еще лучше используйте стр (структурная распечатка программы) lib:

require 'pp'
a=["value1", "value2", "value3"]
pp a
116
ответ дан dmondark 24 November 2019 в 14:27
поделиться

Попробуйте .inspect

>> a = ["value1", "value2", "value3"]
=> ["value1", "value2", "value3"]
>> a.inspect
=> "[\"value1\", \"value2\", \"value3\"]"
>> a = {"key1" => "value1"}
=> {"key1"=>"value1"}
>> a.inspect
=> "{\"key1\"=>\"value1\"}"

Можно также использовать p () метод для печати их:

>> p a
{"key1"=>"value1"}
5
ответ дан Gdeglin 24 November 2019 в 14:27
поделиться

Еще вы можете использовать метод y , который преобразует ввод в Yaml. Это дает довольно хороший результат ...

>> data = { 'dog' => 'Flemeale', 'horse' => 'Gregoire', 'cow' => 'Fleante' }
=> {"cow"=>"Fleante", "horse"=>"Gregoire", "dog"=>"Flemeale"}
>> y data
--- 
cow: Fleante
horse: Gregoire
dog: Flemeale
54
ответ дан 24 November 2019 в 14:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: