Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中的连续捕获异常_Python_Python 3.x - Fatal编程技术网

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)