python中的连续捕获异常
在索引列表时,我需要不断捕获异常并引发索引器异常,例如:python中的连续捕获异常,python,python-3.x,Python,Python 3.x,在索引列表时,我需要不断捕获异常并引发索引器异常,例如: l = [] while((l[3]) throws IndexError): //Add more data to the list l += [3] 在没有嵌套try/catch块的情况下,如何继续检查方法调用是否引发了异常?这取决于您希望用什么扩展列表。假设“无”,您可以这样做: l = [] while True: try: l[3] = 'item' break except Index
l = []
while((l[3]) throws IndexError):
//Add more data to the list
l += [3]
在没有嵌套try/catch块的情况下,如何继续检查方法调用是否引发了异常?这取决于您希望用什么扩展列表。假设“无”,您可以这样做:
l = []
while True:
try:
l[3] = 'item'
break
except IndexError:
l.extend([None])
print l # [None, None, None, 'item']
这取决于你想用什么扩展你的列表。假设“无”,您可以这样做:
l = []
while True:
try:
l[3] = 'item'
break
except IndexError:
l.extend([None])
print l # [None, None, None, 'item']
我没有想到将其包装在一个无限循环中,部分原因是在我的应用程序中,它已经包装在一个无限循环中,并且不希望它变得无法控制。您可以这样做:
,而len(l)我没有想到将其包装在一个无限循环中,部分原因是在我的应用程序中,它已经包装在一个无限循环中,不希望它变得无法控制。你可以这样做:,而len(l)为什么不想使用try:。。。除了:
block?这是Pythonic。你可能会发现我的答案很有用。@BurhanKhalid每次运行被索引的数字都会改变,这取决于它正在从USB端口读取数据。在例外情况下或任何“直到我们有足够的”循环中这样做似乎很愚蠢。为什么不将所需的长度与现有长度进行比较,并添加所需的数据量如果len(l)
为什么您不想使用try:。。。除了:
block?这是Pythonic。你可能会发现我的答案很有用。@BurhanKhalid每次运行被索引的数字都会改变,这取决于它正在从USB端口读取数据。在例外情况下或任何“直到我们有足够的”循环中这样做似乎很愚蠢。为什么不将所需的长度与现有长度进行比较,并添加所需的数据量<代码>如果len(l)