Bo *_*o A 11 python stdin hang readlines
每次我执行我的Python脚本时,它似乎都挂在这一行:
lines = sys.stdin.readlines()
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能解决/避免这种情况?
编辑
这就是我正在做的事情lines:
lines = sys.stdin.readlines()
updates = [line.split() for line in lines]
Run Code Online (Sandbox Code Playgroud)
编辑2
我从git hook运行这个脚本,所以在EOF周围有吗?
mgi*_*son 15
这很大程度上取决于您要完成的任务.你可以这样做:
for line in sys.stdin:
#do something with line
Run Code Online (Sandbox Code Playgroud)
当然,使用这个习惯用语以及readlines()您正在使用的方法,您需要以某种方式将EOF字符发送到您的脚本,以便它知道该文件已准备好读取.(在unix上,Ctrl-D通常可以解决问题).