我如何在系统上找到一个目录,无论它在python中位于何处?

我如何在系统上找到一个目录,无论它在python中位于何处?,python,glob,Python,Glob,我为一个自动化项目运行了一系列脚本。其中一个脚本创建了一个名为“cloned_git_repo”的文件夹。下一个脚本需要在该文件夹中查找要运行转换的文件。如何让Python脚本自动进入该文件夹进行工作? 代码如下: result = [y for x in os.walk('/Users/user.name/Desktop/automation_project/cloned_git_repo') for y in glob(os.path.join(x[0], '*.csv'))] 我如何让它

我为一个自动化项目运行了一系列脚本。其中一个脚本创建了一个名为“cloned_git_repo”的文件夹。下一个脚本需要在该文件夹中查找要运行转换的文件。如何让Python脚本自动进入该文件夹进行工作? 代码如下:

result = [y for x in os.walk('/Users/user.name/Desktop/automation_project/cloned_git_repo') for y in glob(os.path.join(x[0], '*.csv'))]

我如何让它自动进入“克隆的”\u git\u repo“并继续程序的其余部分,而不是硬编码该目录路径。它不能硬编码,因为不同机器上的不同人员将运行该脚本,因此“/Users/user.name/Desktop/automation\u project/cloned\u git\u repo”每台机器将不同。谢谢

您要做的是访问一个环境变量,例如,
$HOME
,您的脚本将接管该变量。这将略高于Python(任何脚本都可以做到这一点)

在Python中,您可以使用:

import os


HOME = os.getenv('HOME')
去拿

一种更清洁(和跨平台)的方法是使用,例如:

在这两种情况下,您都应该在
主页
中获得路径的
/Users/user.name
部分,您可以从那里获取它

例如:

result = [
    y
    for x in os.walk('/Users/user.name/Desktop/automation_project/cloned_git_repo')
    for y in glob(os.path.join(x[0], '*.csv'))]
可能成为:

import os


HOME = os.path.expanduser('~')
result = [
    y
    for x in os.walk(os.path.join(HOME, 'Desktop/automation_project/cloned_git_repo'))
    for y in glob(os.path.join(x[0], '*.csv'))]


更灵活的方法是使用更高级别的软件包,例如,它提供了访问各种标准路径的跨平台方法。

向项目中添加一个配置文件,用于存储项目所需文件的路径。然后读入该文件或提示用户选择该文件。
import os


HOME = os.path.expanduser('~')
result = [
    y
    for x in os.walk(os.path.join(HOME, 'Desktop/automation_project/cloned_git_repo'))
    for y in glob(os.path.join(x[0], '*.csv'))]