python的异常处理
因为有C和C++的基础,看起python没有多达的困难,今天在看书的时候,发现有一个程序解释的时候没有通过。
#!/usr/bin/python
# Filename: finally.py
import time
try:
f = file('poem.txt')
while True: # our usual file-reading idiom
line = f.readline()
if len(line) == 0:
break
time.sleep(2)
print line,
finally:
f.close()
print 'Cleaning up...closed the file'
可是解释的时候,总是出错:
wangyao@wangyao:~/bin$ python finally.py
Traceback (most recent call last):
File "finally.py", line 15, in ?
f.close()
NameError: name 'f' is not defined
加了global后还是解释出错。
最后,把f的声明放到try的外面就可以了。
晕!
阅读(2205) | 评论(0) | 转发(0) |