基本配置:
Anaconda 3 4.2.0(python3.5)
注意:
1、代码存放至全英文目录下;
2、电脑管家之类的安全软件暂时关闭(因为发布出来的exe文件属于可执行文件,电脑管家可能会认为发布出来的文件为病毒,自动删除)
具体操作步骤如下:
1、写好的python代码,存放至全英文的目录下:
import keras from keras.models import Sequential import numpy as np import pandas as pd from keras.layers import Dense import random import matplotlib.pyplot as plt from tensorflow.examples.tutorials.mnist import input_data from tkinter import filedialog import tkinter.messagebox #这个是消息框,对话框的关键 file_path = filedialog.askdirectory() mnist = input_data.read_data_sets(file_path, validation_size=0) #随机挑选其中一个手写数字并画图 num = random.randint(1, len(mnist.train.images)) img = mnist.train.images[num] plt.imshow(img.reshape((28, 28)), cmap='Greys_r') plt.show() x_train = mnist.train.images y_train = mnist.train.labels x_test = mnist.test.images y_test = mnist.test.labels #reshaping the x_train, y_train, x_test and y_test to conform to MLP input and output dimensions x_train = np.reshape(x_train, (x_train.shape[0], -1)) x_test = np.reshape(x_test, (x_test.shape[0], -1)) y_train = pd.get_dummies(y_train) y_test = pd.get_dummies(y_test) #performing one-hot encoding on target variables for train and test y_train=np.array(y_train) y_test=np.array(y_test) #defining model with one input layer[784 neurons], 1 hidden layer[784 neurons] with dropout rate 0.4 and 1 output layer [10 #neurons] model=Sequential() model.add(Dense(784, input_dim=784, activation='relu')) keras.layers.core.Dropout(rate=0.4) model.add(Dense(10,input_dim=784,activation='softmax')) # compiling model using adam optimiser and accuracy as metric model.compile(loss='categorical_crossentropy', optimizer="adam", metrics=['accuracy']) # fitting model and performing validation model.fit(x_train, y_train, epochs=20, batch_size=200, validation_data=(x_test, y_test)) y_test1 = pd.DataFrame(model.predict(x_test, batch_size=200)) y_pre = y_test1.idxmax(axis = 1) result = pd.DataFrame({'test': y_test, 'pre': y_pre}) tkinter.messagebox.showinfo('Message', 'Completed!')
2、通过命令行,按照pyinstaller
pip install pyinstaller
3、命令行打包文件
先切换路径至python代码所在目录,执行语句:
pyinstaller -F -w xxx.py
4、等待打包完成,会生成一个build文件夹和一个dist文件夹,exe可执行文件就在dist文件夹里,如果程序引用有资源,则要把资源文件放在这个exe正确的相对目录下。
5、运行exe文件。
有时运行文件会出错,此时需要拷贝下图所示的文件夹至exe文件所在目录
运行成功!
相关推荐:
Python打包文件夹的方法小结(zip,tar,tar.gz等)
以上就是python3将python代码打包成exe文件的方法的详细内容,更多请关注php中文网其它相关文章!