Python中的open()函数默认目录是什么?

13

我是新手,不知道 open() 函数的默认目录在哪里。

例如:open('whereisthisdirectory.txt','r')

有人能给我建议吗?我已经尝试过谷歌和stackoverflow,甚至将一个随机的 txt 文件放入那么多文件夹中,但仍然无法搞清楚。由于我刚开始学习,我想立即学习而不是每次打开文件时都要输入"c:/directory/whatevevr.txt"。谢谢!

PS:我的 Python 目录已安装到 C:\Python32 ,我正在使用 3.2 版本。

9个回答

27

os.getcwd()

显示当前的工作目录,这是open用于相对路径的基础目录。您可以使用os.chdir来更改它。


5
如果你使用的是Windows操作系统,请先输入:
import os

然后输入
os.getcwd()

而且它应该打印出当前工作目录。


2
  1. 这应该在任何最近的操作系统上都可以运行。
  2. 我认为问题更多地涉及当前目录的概念。也许您可以添加一些句子来解释它。
- undur_gongor

5
答案与Python无关。与使用任何其他语言编写的程序一样,默认目录是您的操作系统认为的当前工作目录。如果您从命令提示符窗口启动程序,则CWD将是运行程序时所在的目录。如果您从Windows菜单或桌面图标启动它,则CWD通常在创建图标时沿着程序路径定义,否则会回退到Windows在缺少该信息时使用的某个目录。
在任何情况下,您的程序可以通过调用os.getcwd()来查询当前工作目录。

2
问题是针对Python的。 - paperduck
2
不,不是这样的。这个问题涉及到每种编程语言中都会出现的open()(或等效)系统调用的通用行为。如果这个问题涉及到与这种通用行为不同的语言,那么它就是特定于语言的。但这里并非如此。 - ʇsәɹoɈ

3

默认位置是当前工作目录(CWD),因此如果您的Python脚本在c:\directory中,并且在那里运行它,如果调用open(),它将尝试打开指定位置的文件。


2

首先,您必须导入:

import os

然后打印当前工作目录:

os.getcwd()

如果你想要改变当前的工作目录:
os.chdir('your_complete_required_path')

1

open()函数总是在当前工作目录中创建文件。找到当前工作目录的最佳方法是找到三行小代码:

import os
current_working_directory = os.getcwd()
print(current_working_directory)

运行上述代码,您将获得当前工作目录,在该目录下 open() 函数将创建一个新文件。祝你好运!

1
在存放.py文件的目录(CWD)中创建.txt文件,然后运行.py文件。

1

如果你正在通过解释器运行脚本(例如pycharm、VSCode等),你的Python文件将会被保存在我的文档中(至少在我的个人经验中,是这样的)。除非你在运行之前手动将其保存到你选择的目录中,否则它会被保存在那里。一旦保存完毕,解释器将使用该目录作为当前目录,因此你的Python脚本所创建的任何保存也将自动保存在那里,除非你另有说明。


0

这取决于您如何从终端运行它

像这样,它将在您的主目录中查找

C:\Users\name>python path\file.py

就像这样,它将会显示在你的文件旁边

C:\Users\name>cd path

C:\Users\name\path>python file.py

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