从不同的目录

时间:2018-02-27 21:26:01

标签: python tkinter sys

我正在尝试从另一个python程序中导入一个python程序,但是这些不在同一个目录中,所以我使用这个代码:

import sys
sys.path.append("C:/Users/Name/Desktop/Project")
import Maths

这样可以,它会打开程序。但是,我遇到的问题是我导入的程序依赖于一些似乎没有加载的图像和文件(这会阻止程序正常运行)。这些文件放在

C:/Users/Name/Desktop/Project/resources

我尝试过什么

我已经尝试将我要导入的程序放在与其依赖的文件相同的目录中,但是出现了与此处显示的相同的错误:

couldn't open "resources/bg.png": no such file or directory

所以我的问题是 - 如何解决我上面描述的问题?

1 个答案:

答案 0 :(得分:0)

一种可能的解决方案是将Maths模块转换为导入包。将它放在工作文件夹中的子文件夹中。在该子文件夹中放置一个空__init__.py以使Maths成为一个包。您现在可以照常从工作文件夹中启动的任何模块导入它。要解决错误,您必须抽象数学代码中的资源位置。尝试使用pkgutil.get_data(package, resource)获取这些文件的内容。 请参阅页面底部的https://gist.github.com/kbrandl/01858318da8cbdff606e8bba32145882文档。

相关问题