【问题标题】:What is the "sys.stdout.write()" equivalent in Ruby?Ruby 中的“sys.stdout.write()”等价物是什么?
【发布时间】:2011-03-16 23:02:46
【问题描述】:

在 Python 中,sys.stdout.write() 在 Ruby 中的等价物是什么?

【问题讨论】:

  • 如果你能解释一下sys.stdout.write()在python中的作用会很好
  • @Salil:它将一个字符串写入标准输出。

标签: python ruby stdout


【解决方案1】:

puts(或print,如果您不想自动附加换行符 (\n))。

【讨论】:

    【解决方案2】:
    puts "Hello, world!"
    

    print - 因为它已缓冲。

    【讨论】:

      【解决方案3】:

      在 Ruby 中,您可以使用 $stdoutSTDOUT 访问标准输出。所以你可以像这样使用write 方法:

      $stdout.write 'Hello, World!'
      

      或等效:

      STDOUT.write 'Hello, World!'
      

      $stdout实际上是一个全局变量,默认值为STDOUT

      你也可以使用puts,但我认为这更类似于python的print

      【讨论】:

        【解决方案4】:

        这是一个用于向/从标准输入和标准输出写入和读取的单行代码。

        $ ruby -e '$stdout.write "hi\n" '
        hi
        
        $ echo "somestring" | ruby -e 'p  $stdin.read'
        "somestring\n"
        
        $ echo "somestring" | ruby -e 'puts   $stdin.read'
        somestring
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-07-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-11-14
          • 2010-11-01
          • 2013-08-11
          相关资源
          最近更新 更多