协慌网

登录 贡献 社区

查找当前目录和文件的目录

在 Python 中,我可以使用哪些命令来查找:

  1. 当前目录(当我运行 Python 脚本时我在终端中的位置),以及
  2. 我正在执行的文件是哪里?

答案

要获取包含 Python 文件的目录的完整路径,请在该文件中写入:

import os 
dir_path = os.path.dirname(os.path.realpath(__file__))

(请注意,如果您已经使用os.chdir()更改当前工作目录,则上述咒语将不起作用,因为__file__常量的值是相对于当前工作目录的,并且不会被os.chdir()更改os.chdir()来电。)


要使用当前工作目录

import os
cwd = os.getcwd()

上面使用的模块,常量和函数的文档参考:

当前工作目录: os.getcwd()

__file__属性可以帮助您找出正在执行的文件所在的位置。这篇 SO 帖子解释了一切: 如何在 Python 中获取当前执行文件的路径?

您可能会发现这有用作为参考:

import os

print("Path at terminal when executing this file")
print(os.getcwd() + "\n")

print("This file path, relative to os.getcwd()")
print(__file__ + "\n")

print("This file full path (following symlinks)")
full_path = os.path.realpath(__file__)
print(full_path + "\n")

print("This file directory and name")
path, filename = os.path.split(full_path)
print(path + ' --> ' + filename + "\n")

print("This file directory only")
print(os.path.dirname(full_path))