【发布时间】:2017-01-06 18:27:44
【问题描述】:
在阅读了 Pydoc 中的文件对象以及函数如何调用函数之后,我重写了 Zed Shaw 的 LPTHW 脚本之一,试图了解它是如何工作的。
代码如下:
def open_file(f):
open(f)
def read_file(f):
f.read()
read_file(open_file('test.txt'))
这是错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 2, in read_file
AttributeError: 'NoneType' object has no attribute 'read'
然而这很好用:
input_file = 'test.txt'
print open(input_file).read()
为什么调用函数版本的函数返回NoneType而不是读取文件?
【问题讨论】:
标签: python-2.7 file nonetype