【发布时间】:2019-01-10 21:53:23
【问题描述】:
我正在编写一个 Python 程序,它读取文件并根据用户提供的信息和输入执行任务。文件始终相同,用户不会修改。如何在我的程序中导入/包含该文件,以便用户不必将文件复制到他们的目录中以使程序正常工作?这主要是我试图避免的。
【问题讨论】:
-
你的程序是从用户目录运行还是被导入?
-
您的 Python 应用程序将必须知道文件的位置。您有两个选择:将文件中的数据移动到 python 应用程序中,或者将文件安装到系统上的已知位置。
-
文件是纯文本文件吗?
-
理想的解决方案是设计要安装的程序——无论是通过
pip,还是像 WIndows 安装程序/Mac DMG/等。由PyInstaller之类的东西构建。然后,您使用setuptoolsResource Manager API。setuptools确保无论文件被安装在哪里(即使它被埋在.exe文件中),您都可以调用resource_stream来打开它(或者只调用resource_string来获取它的内容)。跨度> -
This question 展示了如何很好地使用
setuptools。
标签: python python-3.x