Python 从系统中的某个地方调用脚本时,如何导入配置文件?
假设我有一个文件夹“myProject”,其中有一个脚本“mySkript.py”和一个配置文件“myConfig.py” 从“myProject”中调用脚本时,我会执行以下操作:Python 从系统中的某个地方调用脚本时,如何导入配置文件?,python,cwd,Python,Cwd,假设我有一个文件夹“myProject”,其中有一个脚本“mySkript.py”和一个配置文件“myConfig.py” 从“myProject”中调用脚本时,我会执行以下操作: with open("myConfig") as configurationRawData: # do something 现在假设我不是从“myProject”文件夹调用脚本,而是从“User/desktop”调用脚本。在这种情况下,open命令实际上不会找到“myConfig”。 我希望让我的skcri
with open("myConfig") as configurationRawData:
# do something
现在假设我不是从“myProject”文件夹调用脚本,而是从“User/desktop”调用脚本。在这种情况下,open命令实际上不会找到“myConfig”。
我希望让我的skcript使用它自己的路径作为根路径,并将此属性继承到它在执行期间可能调用的所有其他脚本。
有什么想法吗?有一种方法可以做到:
导入操作系统
config\u file=os.path.join(os.path.dirname(\uuu file\uuuu),“myConfig.py”)
打开(配置文件)作为configurationRawData:
#做点什么
\uuuu file\uuuu
是一个内部python变量,表示当前文件的路径(每个示例类似于windows的C:\Users\user\documents\scripts\mySkript.py
)。它导致文件本身,它不依赖于工作目录
os.path.dirname(\uuuu file\uuuu)
为您提供当前文件的目录(C:\Users\user\documents\scripts\
用于上述示例)
os.path.join()
构建一个操作系统喜欢的路径,因此它将为上面的示例生成C:\Users\user\documents\scripts\myConfig.py
无论您的操作系统是什么(python为您处理),只要您的两个文件位于同一目录中,这都可以工作。有一种方法可以做到这一点:
导入操作系统
config\u file=os.path.join(os.path.dirname(\uuu file\uuuu),“myConfig.py”)
打开(配置文件)作为configurationRawData:
#做点什么
\uuuu file\uuuu
是一个内部python变量,表示当前文件的路径(每个示例类似于windows的C:\Users\user\documents\scripts\mySkript.py
)。它导致文件本身,它不依赖于工作目录
os.path.dirname(\uuuu file\uuuu)
为您提供当前文件的目录(C:\Users\user\documents\scripts\
用于上述示例)
os.path.join()
构建一个操作系统喜欢的路径,因此它将为上面的示例生成C:\Users\user\documents\scripts\myConfig.py
无论您的操作系统是什么(python为您处理),只要您的两个文件位于同一目录中,这都可以工作。
open(“myConfig”)
将不会打开“myConfig.py”。这是两个不同的文件名。这能回答你的问题吗<代码>打开(“myConfig”)将不会打开“myConfig.py”。这是两个不同的文件名。这能回答你的问题吗?