我有一个输入文件(“abc.in”),我希望将其每一行读取为 input()
,就像它在 hackerrank 和其他在线编码平台上的工作方式一样。
我已经看到通过 piping 复制相同功能的解决方案, fileinput and sys在 hackerrank 上,我可以使用 input()
将输入文件的一行存储为变量。我如何在本地执行此操作?我是否将文件存储在同一个位置,我应该使用什么命令在终端中运行它?
我认为这很容易,但不知何故,在尝试了一段时间后我似乎无法弄清楚如何做到这一点。如果答案很明显,我们深表歉意。
非常感谢您提供的任何帮助!
最佳答案
您可以使用 <
重定向标准输入在命令行上。假设您将以下输入存储到文件 data.in
:
line1
line2
并且您将以下代码存储到 test.py
:
print(1, input())
print(2, input())
然后您可以使用重定向的标准输入运行脚本:
~$ python3 test.py < data.in
1 line1
2 line2
如果您想将输出保存到文件中,您也可以重定向标准输出:
~$ python3 test.py < data.in > data.out
关于Python3 : Using input() with stdin, 就像 hackerrank 中一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42526400/