在我的 Python 书籍和 Python 文档中,这段代码应该足以打开一个文件:
f = open("file.txt", "r")
但如果我这样做,我会收到一条错误消息,告诉我 file.txt 不存在。但是,如果我使用 file.txt 所在的整个路径,它会打开它:
f = open("C:/Users/Me/Python/file.txt", "r")
对此有解释吗?
简而言之 - 直接搜索路径(当前工作目录)是 Python 将要查找的位置......(所以在 Windows 上 - 可能会假设 C:\Pythonxy)
是的,这取决于 Python/IDLE 的执行位置......它使用它的搜索路径:
>>> import os
>>> os.getcwd()
'/home/jon'
>>> open('testing.txt')
<open file 'testing.txt', mode 'r' at 0x7f86e140edb0>
在 shell 中 - 更改目录...然后启动 Python/IDLE
jon@forseti:~$ cd /srv
jon@forseti:/srv$ idle
>>> import os
>>> os.getcwd()
'/srv'
>>> open('testing.txt')
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
open('testing.txt')
IOError: [Errno 2] No such file or directory: 'testing.txt'