我是一名新程序员,正在使用pyqt创建一个桌面应用程序。我目前正在通过pypi为pip安装打包这个。我有一个文件目录系统:
MANIFEST.in
setup.py
src_dir
->main_script.py
->supporting_script1.py
->supporting_script2.py
->codeAssets_dir
--->img1.png
--->img2.png
现在,当我pip安装我的项目并从一个干净的venv运行它时,当我从venv的主目录运行它时我的图像没有正确显示。但是,当我从源文件夹(与codeAssets_dir处于同一级别(运行项目时,图像会按预期显示。其他一切都很好,我的项目甚至可以访问其他支持脚本,无论程序在哪里运行。
我假设我对我的图像路径做了一些愚蠢的事情,因为它显然找不到它。在我的supporting_script中,我使用了一个相对路径self.pixmap = QtGui.QPixmap('codeAssets_dir/img1.png')
。我应该如何解决这个问题?
您应该基于os.path.dirname(__file__)
构建文件的路径。