我如何在系统上找到一个目录,无论它在python中位于何处?
我为一个自动化项目运行了一系列脚本。其中一个脚本创建了一个名为“cloned_git_repo”的文件夹。下一个脚本需要在该文件夹中查找要运行转换的文件。如何让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'))] 我如何让它
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'))]