2

实例化后,有什么方法可以访问 CSV 写入器/读取器对象使用的文件对象?我打开了 csv 模块,看来它的比赛是内置的。我还尝试将文件对象设置为属性,但出现以下错误:

AttributeError: '_csv.writer' object has no attribute 'fileobj'
4

2 回答 2

3

csv.writer是一个“内置”功能。也就是说,它是用编译后的 C 代码而不是 Python 编写的。所以它的内部变量不能从 Python 代码中访问。

话虽如此,我不确定您为什么需要检查 csv.writer 对象以找出文件对象。该对象是在创建对象时指定的:

w = csv.writer(fileobj, dialect, ...)

因此,如果您以后需要访问该对象,只需将其保存在另一个变量中即可。

于 2008-10-13T18:33:54.817 回答
0

据我所知,一旦将文件对象放入 csv 对象,就没有直接的方法可以将其取出。我的方法可能是对您正在使用的 csv 编写器和读取器进行子类化,以便他们可以随身携带这些数据。当然,这假设能够直接访问工厂函数创建的类的类型(除其他外)。

于 2010-07-14T05:40:53.253 回答