[英]Read input from redirected stdin with python
我有這個循環從 stdin 讀取行直到輸入換行符,但是,這只適用於輸入輸入。 如何讓程序通過命令行從重定向的標准輸入讀取行?
例如:
$ python graph.py < input.input
這是我必須從輸入中讀取行的循環:
while 1:
line = sys.stdin.readline()
if line == '\n':
break
try:
lines.append(line.strip())
except:
pass
正如其他人所提到的,可能您的條件line == '\\n'
永遠不會成立。 正確的解決方案是使用如下循環:
for line in sys.stdin:
stripped = line.strip()
if not stripped: break
lines.append(stripped)
考慮以下選項
import sys
sys.stdin = open("input.txt", "r")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.