gpt4 book ai didi

python - 循环尝试/排除

转载 作者:太空宇宙 更新时间:2023-11-04 10:46:05 30 4
gpt4 key购买 nike

我在提出异常方面遇到困难,例如:

import csv

o = open('/home/foo/dummy.csv', 'r') # Empty file!
reader = csv.reader(o, delimiter=';')
reader = list(reader)

try:
for line in reader:
print line[999] # Should raise index out of range!
except Exception, e:
print e

基本上 csv.reader 读取空文件,转换为空列表,上面的代码应该打印 IndexError。但事实并非如此。然而,下面的代码完美地引发了:

print reader[0][999]

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: list index out of range

我做错了什么吗?

最佳答案

好吧,因为 reader 是一个空列表,所以您的 for 循环永远不会执行。所以,line[999] 没有被执行。这就是不抛出异常的原因。

至于其他代码,抛出异常是因为您访问了空列表的0th 索引。尝试访问 reader[0] 并查看是否出现异常。

关于python - 循环尝试/排除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17212692/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com