同一文件的多个文件句柄

温诺

所以这个问题让我开始思考。我对同一个文件使用了多个文件句柄进行了一些测试,结果发现一些奇怪的结果,我希望有人能解释一下。

>>> f1 = open("test.txt",'w')
>>> f1.close()
>>> f1, f2 = open("test.txt", 'w'), open("test.txt", 'w')
>>> f1 == f2
False
>>> f1, f2 = open("test.txt", 'r'), open("test.txt", 'r')
>>> f1 == f2
False

为什么这些测试不返回True当然,将句柄分配给同一文件应该具有相同的值。

这些比较返回的基本机制是False什么,创建这种行为的基本原理是什么?

弗朗茨·方塔

此处解释了基本机制:https : //docs.python.org/2/library/stdtypes.html

某些类型(例如,文件对象)仅支持退化的比较概念,其中该类型的任何两个对象都不相等

...

一个类的不同实例通常比较为不相等,除非该类定义了eq()方法或cmp()方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章