[英][Pyinstaller]: Working code produces ModuleNotFoundError when turned to exe
使用 Pyinstaller 3.5 和 python 3.6(與 Anaconda 一起安裝)。
我有一個 python 代碼,它明確導入 numpy 並且在使用 Spyder 或 Anaconda 提示符啟動時工作正常。
在 Anaconda 提示符下使用 pyinstaller 生成一個 exe,它生成正常,沒有任何錯誤。
但是,在啟動 exe 時(仍然來自 Anaconda 提示符),它會產生以下錯誤: ModuleNotFoundError: No module named 'numpy'
我檢查了 numpy 是否與 Anaconda 正確安裝。 我還再次安裝了它: pip install numpy
exe 沒有成功(更多的是絕望的舉動)。
我也試過-hidden-import=numpy
但它沒有用。 還是同樣的錯誤。
你們知道為什么這不起作用嗎?
我做了一段較短的代碼來測試這個問題:
# import all the libraries required
import os, re, time, csv, math
import numpy as np
import matplotlib
import matplotlib.figure
import matplotlib.backends.backend_tkagg
import matplotlib.patches
import matplotlib.gridspec
import itertools
from tkinter import filedialog
from tkinter import messagebox
import tkinter
import tkinter.constants as const
from tkinter import ttk
import xlrd # Read Xls files
# Compute the used colors
colors = { "white": [ 255,255,255],
"lightgreen": [ 192,255,192],
"red": [ 255, 64, 64],
"grey": [ 224,224,224],
"darkgrey": [ 64, 64, 64],
"green": [ 0,255, 0],
"blue": [ 150,150,255],
"orange": [ 255,190, 0],
}
color0 = colors["red"]
color1 = colors["lightgreen"]
colorMap = np.array([color0, color1], dtype = np.uint8)
該問題的解決方案是以管理員身份運行 Anaconda 以通過 Anaconda 安裝 pyinstaller。 在快捷菜單中,右鍵單擊 Anaconda 並以管理員身份運行。 然后,可以安裝新模塊。 安裝 pyinstaller。 在 Anaconda 提示符下運行 pyinstaller。
從 Anaconda 提示符啟動時,ModuleNotFoundError 消失了,exe 運行良好。
從 finder 啟動時仍然無法正常工作,盡管這是另一個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.