NSIS:无法导入tin

2024-04-19 08:46:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我想构建使用matplotlib的程序,它需要tkinter。 问题是我不能包含tkinter,因为它不在pyPi上(现在它有轮子)。你知道吗

我使用Pynsist构建NSIS安装程序。以下是cfg:

[Application]
name=SineWave
version=1.0
# How to launch the app - this calls the 'main' function from the 'myapp' package:
entry_point=main:main
icon=sinewave.ico

[Python]
version=3.6.5

[Include]
# Packages from PyPI that your application requires, one per line
# These must have wheels on PyPI:
pypi_wheels = numpy==1.16.1
    matplotlib==3.0.3
    pyparsing==2.4.0
    cycler==0.10.0
    six==1.11.0
    python-dateutil==2.8.0
    kiwisolver==1.0.1
    anaconda-project==0.8.2

如果我运行编译的exe,它会返回以下内容:

Traceback (most recent call last):
  File "C:\Users\Novot\AppData\Local\SineWave\SineWave.launch.pyw", line 31, in <module>
    from main import main
  File "C:\Users\Novot\AppData\Local\SineWave\pkgs\main.py", line 2, in <module>
    import matplotlib.pyplot as plt
  File "C:\Users\Novot\AppData\Local\SineWave\pkgs\matplotlib\pyplot.py", line 2372, in <module>
    switch_backend(rcParams["backend"])
  File "C:\Users\Novot\AppData\Local\SineWave\pkgs\matplotlib\pyplot.py", line 207, in switch_backend
    backend_mod = importlib.import_module(backend_name)
  File "importlib\__init__.py", line 126, in import_module
  File "C:\Users\Novot\AppData\Local\SineWave\pkgs\matplotlib\backends\backend_tkagg.py", line 1, in <module>
    from . import _backend_tk
  File "C:\Users\Novot\AppData\Local\SineWave\pkgs\matplotlib\backends\_backend_tk.py", line 5, in <module>
    import tkinter as Tk
ModuleNotFoundError: No module named 'tkinter'

还有,有没有一种方法可以导入其他库所需的所有库?你知道吗


Tags: inpyimportbackendmatplotlibmainlocalline
1条回答
网友
1楼 · 发布于 2024-04-19 08:46:59

我在文件里找到的: Pynsist documentation

“由于Pynsist使用了“捆绑”的Python版本,因此默认情况下不包括tkinter模块。如果您的应用程序依赖于tkinter作为GUI,那么您需要找到以下资产……

相关问题 更多 >