python - 如何将多行作为输入传递给 stdin (Python)

标签 python eclipse stdout stdin

假设示例输入是这样的:

"1 2 3"
"hello"
"hi there"
"x y z"
"5 6 7"

这应该传递到stdin,输出应该简单地将它们打印到stdout

我在 sample.py 中有以下代码,并且我使用 Eclipse 作为我的 IDE。

import fileinput

for line in fileinput.input():
    print line

如果我使用命令行,我也许可以做类似的事情

python sample.py "1 2 3 \n hello"

将输入传递到标准输入。但是我应该如何在 Eclipse 上执行此操作(当需要将多行输入到 stdin 时)?

<小时/>

由于我不知道如何执行此操作,因此我只是将这些行放入 txt 文件中并从中读取。

最佳答案

在 Windows 上,

  1. 将 Python 目录添加到环境变量 PATH(例如 C:\Python27)
  2. 将所有行放入某个文本文件中(例如 input.txt 应包含“hello\n hello”)
  3. 运行cmd
  4. 进入源代码和输入文件所在目录
  5. 运行python sample.py < input.txt

然后你会在 stdout 中得到输出!

关于python - 如何将多行作为输入传递给 stdin (Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19150472/

相关文章:

macos - Mac 应用程序的标准输出在哪里?

python - 如何根据其他列中的值更新数据框单元格值?

python - 您正在尝试向模型添加不可为空的字段 'id'

Python strip 化多余的字符

java - 用于(Java 和报告、PHP 和 Android)的 Eclipse IDE

eclipse - 在Eclipse中创建Gradle项目时,示例项目类型代表什么?

python - Celery 配置文件位置

eclipse - 如何记录 Eclipse 插件/OSGi 包的启动?

python - 从辅助线程重定向标准输出(使用函数而不是类进行多线程?)

python - Windows CMD 用python的sys.stdout在打印行的末尾添加一个随机数