pyinstaller创建的exe文件:scipy 'list' object has no attribute 'join' 问题
exe file created by pyinstaller: scipy 'list' object has no attribute 'join' problem
我遇到了问题。我用PyQt5、numpy、scipy、redis等创建了一个应用程序。运行和python控制台没有问题。有用。但是当我使用pyinstaller制作一个exe文件并运行它时,我有很多错误。
首先我有;
(haydars_env) C:\Users\haydarc\analysis_result>dist\app.exe
Traceback (most recent call last):
File "app.py", line 18, in <module>
from scipy import stats
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "c:\users\haydarc\.conda\envs\haydars_env\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages\scipy\__init__.py", line 136, in <module>
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "c:\users\haydarc\.conda\envs\haydars_env\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages\scipy\_distributor_init.py", line 61, in <module>
File "site-packages\PyInstaller\loader\pyiboot01_bootstrap.py", line 170, in __init__
File "site-packages\PyInstaller\loader\pyiboot01_bootstrap.py", line 133, in _frozen_name
AttributeError: 'list' object has no attribute 'join'
[7028] Failed to execute script app
我有第二个;
我从 google 读到,有人说这可能是 numpy 问题。于是我卸载重装,没有区别。我安装了 numpy+mkl,我有 dll 错误。
我也试过用fbs,还是没区别
有人可以帮助我吗?
注意:这是我的库;
from PyQt5 import QtWidgets, QtCore
from PyQt5.QtWidgets import QMainWindow, QPlainTextEdit
# from pandasmodel import PandasModel
# Other libraries
import sys as os
import sys
import numpy as np
from scipy import stats
import pickle
import redis
import zlib
import pandas
from pandasmodel import PandasModel
from PyQt5.QtWidgets import QMessageBox
from gui import Ui_MainWindow
问题来自 import sys as os
。 os
是另一个经常使用的模块,许多库都在使用它。您遇到的错误来自 os.path.join
:os.path
模块没有调用 join
方法,scipy init 试图访问 [=16] 的属性 join
=] 属性。只需将 sys
重命名为一个不受欢迎的名称即可。
我遇到了问题。我用PyQt5、numpy、scipy、redis等创建了一个应用程序。运行和python控制台没有问题。有用。但是当我使用pyinstaller制作一个exe文件并运行它时,我有很多错误。
首先我有;
(haydars_env) C:\Users\haydarc\analysis_result>dist\app.exe
Traceback (most recent call last):
File "app.py", line 18, in <module>
from scipy import stats
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "c:\users\haydarc\.conda\envs\haydars_env\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages\scipy\__init__.py", line 136, in <module>
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "c:\users\haydarc\.conda\envs\haydars_env\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages\scipy\_distributor_init.py", line 61, in <module>
File "site-packages\PyInstaller\loader\pyiboot01_bootstrap.py", line 170, in __init__
File "site-packages\PyInstaller\loader\pyiboot01_bootstrap.py", line 133, in _frozen_name
AttributeError: 'list' object has no attribute 'join'
[7028] Failed to execute script app
我有第二个;
我从 google 读到,有人说这可能是 numpy 问题。于是我卸载重装,没有区别。我安装了 numpy+mkl,我有 dll 错误。
我也试过用fbs,还是没区别
有人可以帮助我吗?
注意:这是我的库;
from PyQt5 import QtWidgets, QtCore
from PyQt5.QtWidgets import QMainWindow, QPlainTextEdit
# from pandasmodel import PandasModel
# Other libraries
import sys as os
import sys
import numpy as np
from scipy import stats
import pickle
import redis
import zlib
import pandas
from pandasmodel import PandasModel
from PyQt5.QtWidgets import QMessageBox
from gui import Ui_MainWindow
问题来自 import sys as os
。 os
是另一个经常使用的模块,许多库都在使用它。您遇到的错误来自 os.path.join
:os.path
模块没有调用 join
方法,scipy init 试图访问 [=16] 的属性 join
=] 属性。只需将 sys
重命名为一个不受欢迎的名称即可。