python - 用Pyinstaller打包時(shí)出現(xiàn)IndexError怎么回事?
問(wèn)題描述
在我的package里面有個(gè)game.py寫(xiě)好的,然后用pyinstaller打包就出現(xiàn)了下面的情況:
C:package>pyinstaller -F game.py166 INFO: PyInstaller: 3.2.1166 INFO: Python: 3.6.1166 INFO: Platform: Windows-10-10.0.14393-SP0166 INFO: wrote C:packagegame.spec182 INFO: UPX is not available.182 INFO: Extending PYTHONPATH with paths[’C:package’, ’C:package’]182 INFO: checking Analysis182 INFO: Building Analysis because out00-Analysis.toc is non existent182 INFO: Initializing module dependency graph...199 INFO: Initializing module graph hooks...202 INFO: Analyzing base_library.zip ...Traceback (most recent call last): File 'C:Python36Scriptspyinstaller-script.py', line 11, in <module> load_entry_point(’PyInstaller==3.2.1’, ’console_scripts’, ’pyinstaller’)() File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstaller__main__.py', line 90, in run run_build(pyi_config, spec_file, **vars(args)) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstaller__main__.py', line 46, in run_build PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerbuildingbuild_main.py', line 788, in main build(specfile, kw.get(’distpath’), kw.get(’workpath’), kw.get(’clean_build’)) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerbuildingbuild_main.py', line 734, in build exec(text, spec_namespace) File '<string>', line 16, in <module> File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerbuildingbuild_main.py', line 212, in __init__ self.__postinit__() File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerbuildingdatastruct.py', line 161, in __postinit__ self.assemble() File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerbuildingbuild_main.py', line 317, in assemble excludes=self.excludes, user_hook_dirs=self.hookspath) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerdependanalysis.py', line 560, in initialize_modgraph graph.import_hook(m) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerlibmodulegraphmodulegraph.py', line 1509, in import_hook source_package, target_module_partname, level) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerlibmodulegraphmodulegraph.py', line 1661, in _find_head_package target_module_headname, target_package_name, source_package) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerdependanalysis.py', line 209, in _safe_import_module module_basename, module_name, parent_package) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerlibmodulegraphmodulegraph.py', line 2077, in _safe_import_module module_name, file_handle, pathname, metadata) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerlibmodulegraphmodulegraph.py', line 2167, in _load_module self._scan_code(m, co, co_ast) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerlibmodulegraphmodulegraph.py', line 2585, in _scan_code module, module_code_object, is_scanning_imports=False) File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerlibmodulegraphmodulegraph.py', line 2831, in _scan_bytecode global_attr_name = get_operation_arg_name() File 'C:Python36libsite-packagespyinstaller-3.2.1-py3.6.eggPyInstallerlibmodulegraphmodulegraph.py', line 2731, in get_operation_arg_name return module_code_object.co_names[co_names_index]IndexError: tuple index out of range
Traceback顯示應(yīng)該不是我的game.py的問(wèn)題。請(qǐng)問(wèn)這是怎么了?安裝的是最新版的pyinstaller3.2.1版本,Python是3.6版本的。
問(wèn)題解答
回答1:Python 3.6: IndexError: tuple index out of range, 上面提到
RTFM: PyInstaller 3.2.1 does not support Python 3.6
也就是pyinstaller3.2.1不支持Python 3.6.
回答2:建議pyinstaller不要用最新的python版本,至少python3.5以下版本是可行的。
回答3:支持3.6的還沒(méi)有放出,但是可以手動(dòng)安裝https://github.com/pyinstalle... 下載zip后把PyInstaller提出來(lái)。刪掉python/Lib/site-packages/PyInstaller 文件夾,把解壓得到的PyInstaller放進(jìn)去應(yīng)該就OK了。#_#
相關(guān)文章:
1. javascript - vscode alt+shift+f 格式化js代碼,通不過(guò)eslint的代碼風(fēng)格檢查怎么辦。。。2. javascript - [js]為什么畫(huà)布里不出現(xiàn)圖片呢?在線等3. python - 如何判斷爬蟲(chóng)已經(jīng)成功登陸?4. html - vue項(xiàng)目中用到了elementUI問(wèn)題5. html5 - 有可以一次性把所有 css外部樣式轉(zhuǎn)為html標(biāo)簽內(nèi)style=" "的方法嗎?6. javascript - 如何將一個(gè)div始終固定在某個(gè)位置;無(wú)論屏幕和分辨率怎么變化;div位置始終不變7. javascript - 原生canvas中如何獲取到觸摸事件的canvas內(nèi)坐標(biāo)?8. javascript - 有什么比較好的網(wǎng)頁(yè)版shell前端組件?9. javascript - 這不是對(duì)象字面量函數(shù)嗎?為什么要new初始化?10. javascript - 求解答:實(shí)例對(duì)象調(diào)用constructor,此時(shí)constructor內(nèi)的this的指向?
