open()和path.open()之间的区别

7

关于标准库中的pathlib模块,path.open()方法只是对内置的open()函数进行了包装吗?


3
@MikahilZakharov,你指的是这个库吗?[https://docs.python.org/3/library/pathlib.html#pathlib.Path.open] - toti08
@toti08 是的,你说得对。 - Mikhail Zakharov
1
打开路径指向的文件,就像内置的open()函数一样 - 这回答了你的问题吗?无论你是否将其视为包装器,你都可以通过查看pathlib的源代码来决定。 - mkrieger1
@mkrieger1 我已经阅读了你引用的文档,而我的问题正是受到这个评论的启发。是的,我可以查看源代码,但我想知道是否有人已经知道答案而不需要查看代码。 - Mikhail Zakharov
1个回答

12

如果你阅读了 pathlib.Path.open 的源代码,你会发现它只是简单地执行以下操作:

return io.open(str(self), mode, buffering, encoding, errors, newline, opener=self._opener)

根据io文档

io.open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

这是内置的open()函数的别名

所以你说pathlib.Path.open只是内置的open函数的包装器是正确的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接