• 多个py文件生成一个可运行exe文件


    一、概述

    目前有一个python脚本,需要在别的电脑中运行,安装python环境太麻烦,封装成exe文件,运行比较方便。

    二、演示

    环境说明

    python版本:3.7.9

    操作系统:windows 10

    安装模块

    pip3 installer pyinstaller

    封装

    新建目录test,目录结构如下:

    ./
    ├── conf.py
    └── test.py

    conf.py

    # !/usr/bin/python3
    # -*- coding: utf-8 -*-
    
    people_dict = [
        {
            "name":"张三",
            "age":'23'
        },
        {
            "name":"李四",
            "age":'21'
        }
    ]

    test.py

    # !/usr/bin/python3
    # -*- coding: utf-8 -*-
    import conf
    import json
    
    with open('ret.txt',encoding='utf-8',mode='w') as f:
        f.write(json.dumps(conf.people_dict))

    打开cmd窗口,进入test目录,执行:

    pyinstaller -F -c test.py

    注意:test.py是主程序

    输出:

    ...
    7908 INFO: checking EXE
    7909 INFO: Building EXE because EXE-00.toc is non existent
    7912 INFO: Building EXE from EXE-00.toc
    7913 INFO: Appending archive to EXE E:python_script	estdist	est.exe
    7921 INFO: Building EXE from EXE-00.toc completed successfully.

    它会创建2个目录,分别是build和dist。

    进入dist,里面有一个test.exe程序,双击打开即可。

     运行之后,会创建一个文件ret.xt。这个是py程序做的,用来判断程序是否执行。

    打开文件,查看内容

    ok,程序运行正常。

    总结

    将py文件,打包成exe还是很方便的。注意-c参数,指定为主程序即可。

    对于读取动态配置文件的需求,不能将配置文件定义为py文件,因为封装成exe之后,就无法修改了。

    解决方案就是,将配置文件改成json文件,然后主程序读取json文件,并使用json.loads()转换一下,就可以了。

    需要特别注意json文件和exe文件,在同一目录。

    本文参考链接:

    https://www.cnblogs.com/z3286586/p/10978701.html

  • 相关阅读:
    事务/数据库操作之事务,开启回滚提交
    python连接数据库、cursor fetch语句处理
    order by 排序输出、插入
    表的查询,
    android权限大全
    uniapp ios端证书打包+开发环境
    uniapp在app端白屏报错
    数字递增动画js插件-countUp.js
    窗口滚动时,判断元素与视野的关系-js代码
    Linux安装Nginx并配置站点
  • 原文地址:https://www.cnblogs.com/xiao987334176/p/14143930.html
Copyright © 2020-2023  润新知