在它运行的这段代码中,我不明白为什么会引发WindowsError。如果我不写一个断句,在strout写为无限循环:
member 'strerror' of 'OSError' objects flag2
正如https://docs.python.org/3/library/itertools.html#itertools.count所说,count()等价于for循环
当itertools.count()到达最后一个元素时,是否有可能引发错误,并且当我编写一个中断语句时,是否有可能跳出for循环
我不知道我已经很清楚了。。。 代码是这样的:
for i in itertools.count():
try:
val=winreg.EnumValue(key,i)
print(str(val[1]))
if (val[1]=='COM3'): #SERIAL PORT
port=val[1] #COM PORT
except WindowsError:
print(WindowsError.strerror, ' flag2')
break
对我来说,代码可以运行,但我只想知道itertools是否会因为到达最后一个元素而引发错误,为此我必须编写一个中断语句。如果是,如果有一个没有错误的替代代码,或者可能更优雅
谢谢
目前没有回答
相关问题 更多 >
编程相关推荐