最近,我正在阅读遗留的 ruby 脚本,并希望将其中一些转换为 python。
我理解“STDIN”的概念并进行了一些谷歌搜索。然而,没有关于这个独立语句的文档:“STDIN.gets”。返回值是多少?它是否 secret 获取所有输入并将其存储在某些默认位置,或者它只是我应该删除的一段未完成的无意义的遗留代码?
最佳答案
如果你运行p STDIN.method(:gets)
你得到#<Method: IO#gets>
。这意味着gets
方法(如果在 IO 模块中定义)。知道了这一点,你就可以阅读gets
的官方文档了。这里:
http://ruby-doc.org/core-2.3.0/IO.html#method-i-gets
gets
方法不会将其数据存储在某个默认位置,而是将其作为方法的返回值返回。如果忽略该返回值,则数据会丢失,但调用 STDIN.gets
仍然有用。其副作用:gets
将暂停线程的执行并等待来自标准输入的输入。这将使用户有机会查看 Ruby 脚本已经完成的操作,并在用户愿意的情况下提前终止它。
关于Ruby:STDIN.gets 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37287945/