[英]Python- Why does my executable program take a long time to load after creating it with pyinstaller?
我是 pyinstaller 的新手,但我讓它工作並創建了一個可執行文件。
從 2010 年開始,該程序在我的小筆記本電腦上運行 22-0.24 秒。
我做了基本的 pyinstaller,同時將其保留為pyinstaller myscript.py --onedir
,因為這被解釋為運行它的最快方法。 不管怎樣,文件打開到 black.exe 框並加載大約 22 秒,然后最終打開我的 tkinter 文本框。
我嘗試過其他格式,例如--onefile
,但打開需要 95 秒。 我已經嘗試盡可能優化我的代碼,並將運行時間從 27 提高到令人印象深刻的 22(諷刺)。 .exe 仍然需要相同的時間來加載。
這是代碼
import os
import sys
import shutil
import pandas as pd
import string
import re
from tkinter import *
global lot
def main():
window=Tk()
.... foo
def lot_check():
lot=lot.var
... foo
def Lot_Error():
window1=Tk()
... foo
def clicked():
lot=txt.get()
lot=lot.upper()
pass
else:
Lot_Error()
lot=''.join(L)
counter=pd.read_csv('F:foo,header=None,)
r = re.compile("([a-zA-Z]+)([0-9]+)")
counter_value=r.match(counter.iloc[0,0])
... foo
letter=string.ascii_uppercase[counter_letter_converted]
...foo
counter.iloc[0,0]=m
counter.to_csv('F:Foo0', encoding='utf-8',header=False,index=False)
shutil.copyfile(F:Foo, 'F:Foo2)
file='Foo2'
os.startfile(file)
window.destroy()
main()
window.mainloop()
我為所有代碼道歉,但我想包括我調用的所有庫和庫。 我還想包括一些額外的東西,以防我正在做的事情導致這個問題。
我唯一的猜測是我導入了太多的庫,而 pyinstaller 每次運行時都會讓它們完全加載。 做類似from pandas import read_csv
的事情會讓 exe 運行得更快嗎?
謝謝您的幫助!!
對於遇到相同問題的任何人,似乎我是正確的,或者我最初很不幸,但是在刪除了所有不重要的庫之后。 我的代碼運行得更快。 大約需要 2 秒 vs 22 秒。不完美,但我會接受。
因此,如果可能,如果您關注速度,請使用from x import y
!
有趣的是 pyinstaller 甚至說它只下載和運行使用過的庫,但可能存在一些不完善之處。 無論如何,希望這對將來的任何人都有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.