Как видно на Python, что эквивалентно sys.stdout.write()
в Ruby?
Что такое эквивалент "sys.stdout.write()" в Ruby?
Ответ 1
В Ruby вы можете получить доступ к стандартным параметрам с помощью $stdout
или STDOUT
. Поэтому вы можете использовать метод write:
$stdout.write 'Hello, World!'
или эквивалентно:
STDOUT.write 'Hello, World!'
$stdout
- фактически глобальная переменная, значение по умолчанию которой STDOUT
.
Вы также можете использовать puts
, но я думаю, что это более похоже на python print
.
Ответ 2
puts "Hello, world!"
или print
- потому что он буферизирован.
Ответ 3
puts
(или print
если вы не хотите, чтобы новая строка (\n
) добавлялась автоматически).
Ответ 4
Вот один вкладыш для записи и чтения в/из stdin и stdout.
$ ruby -e '$stdout.write "hi\n" '
hi
$ echo "somestring" | ruby -e 'p $stdin.read'
"somestring\n"
$ echo "somestring" | ruby -e 'puts $stdin.read'
somestring