去年十一月换了新公司后,一直没闲着,马不停蹄地接不同的需求,一个版本一个版本的迭代,也没时间研究python了。十一休假归来,某日,老婆问金融量化需要学python吗?并分享了一个公众号文章,内容是吹嘘python有多神通广大,最后就是网课多少钱的推销路线。给老婆夸口,有时间了教她敲代码,解决她日常分析报告中那些数据的搜集工作。

昨天花了点时间,看了去年的python学习笔记,算是简单基础的复习。接着去年的内容往后面更新。之前有一个同事玩go语言,有一次拜托他帮写了一个从excel读数据curl发post请求的工具,exe文件,着实好用,同为脚本语言,python实现起来应该也简单,不久后,我会用python来实现这段逻辑。言归正传,从基础做起。首先python如何生成exe?

python --version
Python 3.7.1

pip show pywin32
version 225 如果没有则执行 pip install pywin32

pip show pyinstaller
version3.5 如果没有则执行 pip install pyinstaller

本次开发用的是eclipse,主要是eclipse用习惯了,感觉用着也上手,毕竟插件功能海量。

项目结构和脚本内容:

执行如下:等待输入

ok 简单点的预期:就是上述显示能生成一个exe文件,我点击就会独立运行。

pyinstaller --onefile --nowindowed --icon='E:\workspace-eclipse\day1\mydat\favicon.ico' a.py

可以看到生成a.exe文件

把a.exe拷贝到桌面,双击运行:

至此,导出成exe独立程序已经实现。嗯,能不能加个按钮或者输入框那样的显示呢,命令窗口有点不太友好呢。

python 有现成的GUI框架直接引入好了,tk比较简单。

修改脚本内容如下,命名为b.py

from tkinter import *

class Application(Frame):
def __init__(self, master=None):
Frame.__init__(self, master)
self.createWidgets()
self.pack()
def createWidgets(self):
self.helloLabel = Label(self, text='Please intput your name:',bd=20,fg='red')
self.helloLabel.pack()
self.entry1=Entry(self,bd=5,fg="black")
self.entry1.pack()
self.quitButton = Button(self, text='Quit', command=self.quit)
self.quitButton.pack() app = Application()
# 设置窗口标题:
app.master.title('Hello World')
# 主消息循环:
app.mainloop()

执行命令行:

pyinstaller -F -w --icon='E:\workspace-eclipse\day1\mydat\favicon.ico' b.py

备注  -F:生成单个文件   -w : 是去掉命令行窗口     生成b.exe文件如下:

运行b.exe,界面展示如下:

---end---

python脚本生成exe程序的更多相关文章

  1. python 使用py2exe将python 脚本生成exe可执行文件

    使用python的py2exe模块可以很容易地帮助我们将python脚本生成可执行的exe程序.这样我们就可以让脚本脱离虚拟机的束缚,从而独立运行. 首先安装py2exe分解步骤如下:(pip和eas ...

  2. python脚本生成exe可执行文件

    1.先安装第三方插件: py2exe. Get py2exe from http://www.py2exe.org/ 在download里下载与自己python对应的版本 2.写一个测试python文 ...

  3. pyinstaller将python脚本生成exe

    一.下载pyinstaller 二.生成exe 下载pyinstaller 1.在C:\python27\Scripts目录下打开cmd界面,执行命令:pip install PyInstaller ...

  4. 打包python脚本为exe可执行文件-pyinstaller和cx_freeze示例

    本文介绍使用cx_freeze和pyinstaller打包python脚本为exe文件 cx_freeze的使用实例 需要使用到的文件wxapp.py, read_file.py, setup.py ...

  5. Python脚本生成可执行文件&(恋爱小脚本)

    Python脚本生成可执行文件&(恋爱小脚本) 参考文献: http://c.biancheng.net/view/2690.html; https://blog.csdn.net/qq_39 ...

  6. 打包python脚本为exe的坎坷经历, by pyinstaller方法

    打包python脚本为exe的坎坷经历, by pyinstaller方法 又应验了那句歌词. 不经历风雨, 怎么见得了彩虹. 安装过程略去不提, 仅提示: pip install pyinstall ...

  7. 利用Python 脚本生成 .h5 文件 代码

    利用Python 脚本生成 .h5 文件 import os, json, argparse from threading import Thread from Queue import Queue ...

  8. Python脚本生成sitemap

    项目须要用脚本生成sitemap,中间学习了一下sitemap的格式和lxml库的使用方法.把结果记录一下,方便以后须要直接拿来用. 来自Python脚本生成sitemap 安装lxml 首先须要pi ...

  9. 手把手教你用python打造网易公开课视频下载软件5-python生成exe程序

    python程序生成exe文件,使用的是py2exe扩展包,下面写下具体的步骤: 第一步:新建conver2exe.py,内容如下: #coding:utf-8 from distutils.core ...

随机推荐

  1. virt-install命令---详解

    virt-install命令 一般选项:指定虚拟机的名称.内存大小.VCPU个数及特性等: -n NAME, --name=NAME:虚拟机名称,需全局惟一: -r MEMORY, --ram=MEM ...

  2. StringBuilder.sb.AppendLine();

    StringBuilder sb=new StringBuilder(); sb.AppendLine("The world is fair and wonderful.Everything ...

  3. C#,File.AppendAllLines(),换行"\r\n"

    string sourcePath = @"D:\GL\20160826141915999999.txt"; for (int i = 0; i < 10; i++) { G ...

  4. 引用kernel32.dll中的API来进行串口通讯

    串口通讯可以引出kernel32.dll中的API来操作,相关源码如下:using System;using System.Runtime.InteropServices; namespace Tel ...

  5. Linux用户和权限——权限管理

    Linux用户和权限——权限管理 摘要:本文主要介绍了Linux系统中权限的分类,以及对权限的管理. 用户的三种身份 所有者 由于Linux是个多人多工的系统,因此可能常常会有多人同时使用这部主机来进 ...

  6. 让你的项目使用Ts吧

    推荐在这里阅读 9012年都过半了,还不会用ts你就out了 why ? 三大框架angular2以后的版本完全是用ts开发的, vue对ts的支持也越来越好, React也有TSX组件 还在犹豫什么 ...

  7. dos转unix

    方式一 # yum install dos2unix.x86_64 # dos2unix file 方式二 查看样式: :set ff? //dos/unix 设置: :set fileformat= ...

  8. 基本SQL语句使用方法

    结构:增: create database 库名 charset 字符集: create table 表名称(字段名 类型 约束 ,字段名 类型 约束) not null 非空primary key ...

  9. 关于SQLite数据库 字段 DateTime 类型

    这两天刚接触SQLite 数据库 还没有太过于深入的了解 , 于是出现了一个问题 : 我在 C#中 ,使用SQLiteHelper 查询SQLite数据库数据时,报了这个错误: System.Form ...

  10. 6、Routing

    Routing In the previous tutorial we built a simple logging system. We were able to broadcast log mes ...