Python 函数卡在读取行中
在没有输入的情况下,我的python脚本一直处于停滞状态: 其他: 我的程序必须不支持输入,所以如果没有输入,有没有办法计算出来,这样我就可以退出函数了。我尝试查看行是否为空,但readlines函数中的控件似乎丢失(从未退出) 下面是完整的if语句Python 函数卡在读取行中,python,bash,python-2.7,Python,Bash,Python 2.7,在没有输入的情况下,我的python脚本一直处于停滞状态: 其他: 我的程序必须不支持输入,所以如果没有输入,有没有办法计算出来,这样我就可以退出函数了。我尝试查看行是否为空,但readlines函数中的控件似乎丢失(从未退出) 下面是完整的if语句 if len(args) != 0 and args[0] != '-': # print('B') input_file = args[0] try:
if len(args) != 0 and args[0] != '-':
# print('B')
input_file = args[0]
try:
f = open(input_file, 'r')
lines = sys.stdin.readlines()
lines = f.close()
except:
return
else:
#print('c')
lines = sys.stdin.readlines()
有没有办法解决这个问题?您不能使用readlines,因为这会强制执行要读取的新行,并且根据您的输入,您无法预测它何时到来
相反,使用select模块检查(超时)新数据。如果有的话,用read()读取它并自己缝合数据,然后分割行并将它们提供给程序的其余部分 您不能使用readlines,因为这会强制执行要读取的新行,并且根据您的输入,您无法预测它何时到来
相反,使用select模块检查(超时)新数据。如果有的话,用read()读取它并自己缝合数据,然后分割行并将它们提供给程序的其余部分 我的评论原文转到u0b34a0f6ae:
import fileinput
for line in fileinput.input():
pass
我的评论原文转到u0b34a0f6ae:
import fileinput
for line in fileinput.input():
pass
如果您给我们一个答案,包括您如何运行这个,如何输入信息等,我们可能会提供帮助。但是如果没有这些,就不可能猜到。可能是相关的?我看不出你的代码有什么特别的错误。用户可以负责提供空输入,比如
pythonyourscript.py
readlines
只是简单地阻塞,直到它到达输入“文件”的末尾,您可以通过为终端使用正确的控制字符(我相信通常是Unix中的control-D或Windows中的control-Z)来模拟该文件。如果您给我们一个示例,包括您如何运行它,如何向其输入,等等,我们可能会有所帮助。但是如果没有这些,就不可能猜到。可能是相关的?我看不出你的代码有什么特别的错误。用户可以负责提供空输入,比如pythonyourscript.py
readlines
只是阻塞,直到它到达输入“文件”的末尾,您可以通过为终端使用正确的控制字符(我相信,通常是Unix中的control-D或Windows中的control-Z)来模拟该文件。答案应该是自包含的。你应该在你的答案中包含链接,这样人们就不必通过搜索评论来了解你在说什么。答案应该是独立的。你应该在你的答案中包含这个链接,这样人们就不必通过搜索评论来了解你在说什么