首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

确定pyInstaller生成的Python EXE中的应用程序路径

在使用 PyInstaller 生成的 Python EXE 文件中,确定应用程序路径的方法如下:

  1. 使用 sys._MEIPASS 变量获取应用程序路径

在使用 PyInstaller 打包的 Python 应用程序中,可以使用 sys._MEIPASS 变量获取应用程序的临时路径。在程序运行时,sys._MEIPASS 变量会指向一个包含应用程序所有文件的临时目录。

以下是一个示例代码,演示如何使用 sys._MEIPASS 变量获取应用程序路径:

代码语言:python
代码运行次数:0
复制
import sys

if getattr(sys, 'frozen', False):
    application_path = sys._MEIPASS
else:
    application_path = os.path.dirname(os.path.abspath(__file__))

在上面的代码中,我们首先检查 sys.frozen 属性是否为 True,如果是,则说明程序已经被打包成 EXE 文件,此时可以使用 sys._MEIPASS 变量获取应用程序路径。如果 sys.frozen 属性为 False,则说明程序仍然是一个 Python 脚本,此时可以使用 os.path.dirname(os.path.abspath(__file__)) 获取应用程序路径。

  1. 使用 os.path.dirname(os.path.abspath(__file__)) 获取应用程序路径

在某些情况下,可以使用 os.path.dirname(os.path.abspath(__file__)) 获取应用程序路径。这种方法适用于没有使用 PyInstaller 打包的 Python 应用程序。

以下是一个示例代码,演示如何使用 os.path.dirname(os.path.abspath(__file__)) 获取应用程序路径:

代码语言:python
代码运行次数:0
复制
import os

application_path = os.path.dirname(os.path.abspath(__file__))

在上面的代码中,我们使用 os.path.dirname(os.path.abspath(__file__)) 获取应用程序路径,并将其赋值给 application_path 变量。

总之,在使用 PyInstaller 生成的 Python EXE 文件中,可以使用 sys._MEIPASS 变量或 os.path.dirname(os.path.abspath(__file__)) 获取应用程序路径,具体取决于程序的打包方式。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python打包exe——pyinstaller遇到的那些坑及解决办法

出现原因: 1.对应打包的python.exe路径存在中文 2.对应打包的python.exe路径存在空格 3.心大的人,直接从别的地方把文件拷贝到另外一个地方,实际路径发生了变化,导致scripts\...解决方案: 方案一:(亲测) 在Python的安装路径下找到Scripts文件下的pyinstaller-script.py文件并打开,如果路径没有引号则加上引号 ,路径不对则修改成对应的python.exe...就直接用pip install pyinstaller,等待自动安装 2.2、在代码的路径下进行cmd,就直接跳转到该路径的cmd界面,切记路径中不要有中文 2.3、先用后台模式生成工具exe,命令为...下图为命令生成的日志,红框部分则为exe工具生成的路径,如果在日志中只有info信息的话,说明打包过程没有问题 2.4、找到生成的exe文件,运行exe(生成的exe文件都会在dist目录下) 运行时...exe工具,命令为pyinstaller -i ico路径 -w xxxx.py 再将需要的图片资源和代码文件放到dist下的项目文件夹中 2.7、运行exe,能够打开则表示pyinstaller打包

4.1K11

python直接生成exe的方法

一、简介 py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具,这样,你就可以不用装python而在windows系统上运行这个可执行程序。...二、安装py2exe 从http://prdownloads.sourceforge.net/py2exe下载并运行与你所安装的Python对应的py2exe版本的installer,这将安装py2exe...dist子目录中的文件包含了你的程序所必须的东西,你应将这个子目录中的所有内容一起发布。 默认情况下,py2exe在目录dist下创建以下这些必须的文件: 1、一个或多个exe文件。...python mysetup.py py2exe --help 四、指定额外的文件 一些应用程序在运行时需要额外的文件,诸如配置文件、字体、位图。...如果在安装脚本中用data_files可选项指定了那些额外的文件,那么py2exe能将这些文件拷贝到dist子目录中。

2.9K20
  • Python如何生成可执行的.exe文件

    为什么要生成可执行文件: 不需要安装对应的编程环境 可以将你的应用闭源 用户可以方便、快捷的直接使用 打包工具 pyinstaller 一.pyinstaller简介 Python是一个脚本语言...将Python脚本打包成可执行文件有多种方式,本文重点介绍PyInstaller 二、PyInstaller的原理简介 PyInstaller其实就是把python解析器和你自己的脚本打包成一个可执行的文件...可以直接发布输出的整个文件夹里面的文件,或者生成的可执行文件。你只需要告诉用户,你的应用App是自我包含的,不需要安装其他包,或某个版本的Python,就可以直接运行了。...,同样可以安装(前提是需要安装setuptools): python setup.py install 在生成exe文件后,无法正常运行exe文件,可以尝试下面这种安装 pip3 install https...页面,去掉dos窗口需要在打包的时候 加上 -w 参数 pyinstaller -F test.py -w 生成exe文件后,打开速度慢问题 1.改用-D参数 pyinstaller -D test.py

    4.5K10

    Python生成exe文件的方法及步骤

    为什么要生成可执行文件 不需要安装对应的编程环境 可以将你的应用闭源 用户可以方便、快捷的直接使用 打包工具 pyinstaller 安装pyinstaller 如果你的网络稳定,通常直接使用下面的命令安装即可...,就说明是安装成功了 安装成功 pyinstaller参数作用 -F 表示生成单个可执行文件 -D –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项) -w 表示去掉控制台窗口...不过如果是命令行程序的话那就把这个选项删除吧 -c –console, –nowindowed 使用控制台,无界面(默认) -p 表示你自己自定义需要加载的类路径,一般情况下用不到 -i 表示可执行文件的图标...其他参数,可以通过pyinstaller –help查看 开始打包 进入python需要打包的脚本所在目录,然后执行下面的命令即可: pyinstaller -F chinaMobile.py 执行过程如下图所示...,可以把他拷贝到其他地方直接使用,如下图所示,是打包完成后的目录: 应用程序 执行exe应用 因为是exe应用,是可执行文件了,所以直接双击运行即可。

    91920

    手把手教你基于Python实现打包成exe程序

    默认情况下,PyInstaller会生成一个包含依赖文件的文件夹。使用此选项后,所有依赖项都会被打包到一个文件中。--noconsole 或 -w:用于GUI应用程序,不显示控制台窗口。...对于需要交互的控制台程序不适用。--console, -c:强制显示控制台窗口(默认行为)。--icon=图标路径:为生成的exe文件添加一个图标。图标路径应该是.ico文件的完整路径。...--clean:清除PyInstaller创建的临时文件和缓存。--debug:生成用于调试的输出和文件。--upx-dir:如果您安装了UPX压缩工具,此选项可以指定其路径。...(四)高级用法1、单文件(--onefile):使用--onefile选项创建单一的exe文件:pyinstaller --onefile your_script.py这将生成一个包含所有依赖项的单个exe...--icon=路径/图标.ico):可以为您的exe文件添加一个图标:pyinstaller --onefile --icon=路径/图标.ico your_script.py4、添加数据文件:如果您的应用程序需要额外的数据文件

    5.6K10

    Python pyinstaller类库使用学习总结

    生成Windows版可执行文件 安装 pyinstaller 同Linux,安装完成后,会在${PYTHON_HOME}\Scripts目录下生成pyinstaller.exe,为方便执行,将其所在路径添加到环境变量...是资源文件的路径,可以是相对路径或绝对路径,建议使用绝对路径。 是资源文件在打包后在可执行文件中的目标目录路径。...是相对于应用程序顶层目录的目标目录,如果要将文件放入应用程序顶层目录,则使用 . 作为 。...经过分析发现,直接运行可执行文件时,读取配置文件的路径不对,为了避免这种情况,可在代码中添加判断,设置采用可执行文件的方式运行时的配置文件读取路径: program_entry_file.py(程序入口文件...(sys.executable) 其它需要读取配置文件的py文件中添加判断 假设我们期望可执行文件从位于同级目录的conf目录下的program.conf文件中读取配置 config_file_path

    7400

    PY文件打包成EXE

    奔向远方 前言 py文件打包成exe,就是说将Python程序打包成应用程序,不在只是几十行代码了,是一个可以运行的小应用了。 就拿我之前写的python爬虫文件,打包后就可以当做应用程序运行了。...pyinstaller 使用 PyInstaller 将 Python 程序生成可直接运行的程序,这个程序就可以被分发到对应的 Windows 或 Mac OS X 平台上运行。...安装 pip install pyinstaller 使用pyinstaller打包py文件成exe程序 要打包的py文件所在目录执行 pyinstaller -F ant.py 常用参数说明: –icon...=图标路径 -F 打包成一个exe文件 -w 使用窗口,无控制台 -c 使用控制台,无窗口 -D 创建一个目录,里面包含exe以及其他一些依赖性文件 pyinstaller -h 来查看参数 生成这两个文件...dist文件夹下,就是生成的应用程序 pyinstaller 改变生成exe程序的图标 pyinstaller -F --icon=my.ico test.py my.ico 是一个图标名,和当前的test.py

    93920

    Python Flask项目打包成exe文件

    说明: # Python是解释型语言,我们写的Flask或Django项目如果部署,源码可能会泄露,因此我们可以把项目打包成exe,来保护源码# 需要用到工具 -pyinstaller:把python...-F pyinstaller -F demo.py 只在dist文件夹中生成一个程序demo.exe文件,适用于一个模块没有多依赖.py文件 -D pyinstaller -D demo.py 默认选项...,除了主程序demo.exe外,还会在在dist文件夹中生成很多依赖文件,推荐使用这个 -c pyinstaller -c demo.py 默认选项,只对windows有效,使用控制台 -w pyinstaller...demo.py 给生成的demo.exe文件设置一个自定义的图标 tips:实际部署应用过程中,常用 -D方式打包,这样资源文件都已经包括了。...】:把开发完成的应用程序打包,部署到指定的环境,或者供其他应用程序来调用,属于工程化能力范畴。

    2.5K60

    三个你必须要记住的Pyinstaller打包命令——利用Python实现打包exe

    /3 pyinstaller打包机制/ 我们写的python脚本是不能脱离python解释器单独运行的,所以在打包的时候,至少会将python解释器和脚本一起打包,同样,为了打包的exe能正常运行,...1、我们来将这个.py的文件打包成一个exe,我们直接cmd切换到这个脚本的目录,执行命令:pyinstaller-F setup.py,如下图所示。 ?...ps: -F参数表示覆盖打包,这样在打包时,不管我们打包几次,都是最新的,这个记住就行,固定命令。 2、执行完毕之后,会生成几个文件夹,如下图所示。 ?...ps:程序路径最好全部都是英文,否则肯能会出现莫名其妙的问题 11、到此,我们能用到的pyton打包成exe命令都总结完了 /5 总结命令/ Pyinstaller -F setup.py 打包exe.../6 结语/ 到这之后呢,python打包成exe基本算是结束了,记得一定要把pip升级成最新版的pip在安装pyinstaller哈。要不然可能会出现莫名奇妙的问题。

    13K20

    『Python』Python编译成计算机可执行文件(Windows计算机可执行文件exe,Linux 计算机可执行文件elf,Mac计算机可执行文件mach-O)

    生成不自定义图标的exe文件 4.生成带自定义图标的exe文件 PyInstaller 会对脚本进行解析,并做出如下动作: 内部流程 背景: Python 程序都是脚本的方式,一般是在解析器里运行,如果要想要给别的计算机使用...我们的主角 :PyInstaller PyInstaller 是一个十分有用的第三方库,可以用来打包 python 应用程序,打包完的程序就可以在没有安装 Python 解释器的机器上运行了。...PyInstaller将 Python应用程序冻结(打包)在Windows,GNU / Linux,Mac OS X,FreeBSD,Solaris和AIX下的独立可执行文件中。...进入工作目录,即所编译.py文件的路径 右键点击Python文件,属性中即可获得路径。 ? 利用cd命令进入工作目录: cd C:\Users\张小胖\Desktop ? 3....如果没有指定,则默认使用当前目录来生成 spec 文件 -p DIR,--path=DIR 设置 Python 导入模块的路径(和设置 PYTHONPATH 环境变量的作用相似)。

    3.5K10

    Python源文件打包成可执行的exe应用,给你的代码变个身!

    我是努力赚钱买生发水的灰小猿。 今天和大家记录一下Python程序打包成exe应用程序的过程。...要将Python脚本文件打包成可以使用的Python软件,可以借助的工具有py2exe、bbFreeze、pyInstaller、cx_Freeze、py2app,但对于目前使用性能最好的工具还是pyinstaller...在安装好pyinstaller模块之后,就可以对Python文件进行打包了,其中导Python模块的方法可以是将文件放在与pip相同的文件夹下,或者在使用命令时,将文件的绝对路径放在打包命令中。....py生成spec文件 ② 对spec文件中的参数进行修改 ③ spec文件中主要包含4个class: Analysis, PYZ, EXE和COLLECT....Analysis以py文件为输入,它会分析py文件的依赖模块,并生成相应的信息 PYZ是一个.pyz的压缩包,包含程序运行需要的所有依赖 EXE根据上面两项生成 COLLECT生成其他部分的输出文件夹

    1.8K20

    Pyinstaller打包exe完整教程

    原创文|Space9 Python文件打包成可安装、无需Python依赖的高效可执行exe程序 工具及环境 PyInstaller Inno Setup Windows和Python PyInstaller...打包Python应用程序为独立的可执行文件 安装PyInstaller pypi 镜像使用帮助https://mirrors.tuna.tsinghua.edu.cn/help/pypi/ pip install...-n 指定应用程序包的名称(默认值:第一个脚本的名称) –add-data 添加资源文件(Windows使用;分号,大多数Unix使用:冒号,注意后面还有一个...目录中 使用向导生成打包脚本 使用向导生成打包安装程序的脚本,并保存 参考脚本 setup.iss ; Script generated by the Inno Setup Script Wizard...安装目录的文件可以拷贝到任意地方使用cmd命令行形式进行调用 按照如图所示目录结构修改相关的脚本路径(绝对路径修改为相对路径) 之后就可以直接双击build.bat进行一键打包工作,安装包就会保存在

    1.3K40

    如何做一个任何电脑都能用的python程序?

    将python打包成exe的方法有两种,一种是pyinstaller,另一种是py2exe....关于pyinstaller 首先是用pyinstaller去打包python程序,这里我用的python程序是python---贪吃蛇的代码。...如果没有指定,则默认使用当前目录来生成 spec 文件 -p DIR,--path=DIR 设置 Python 导入模块的路径(和设置 PYTHONPATH 环境变量的作用相似)。...该文件存储在--specpath=目录中,默认为当前目录。 spec文件告诉PyInstaller如何处理你的脚本。它对脚本名称和您为pyinstaller命令提供的大多数选项进行编码。...spec文件实际上是可执行的Python代码。 PyInstaller通过执行spec文件的内容来构建应用程序。 对于PyInstaller的许多用途,您不需要检查或修改spec文件。

    3.7K30

    micropython教程(Python集成开发环境)

    本文旨在通过一个简单的demo,介绍基于Python3、PyQT5的环境下开发桌面应用程序的一种方案,当然开发Python的桌面应用程序不止是PyQT 这一种方案,还可以使用Python自带的Tkinter...打包py脚本输出exe 5.1 安装pyinstaller 5.2 打包输出exe程序 参考资料: 1....改为 最小化: 然后点应用-确定,下次双击启动就妥妥的看不到一闪而过的忧伤了… 3....:按钮、文本显示的对应python类中的变量名为:pushButton、plainTextEdit 接着在左侧窗体视图的UI文件上右键选择生成对话框代码: 选择对话框上两个控件所需的响应事件后保存...然后来到我们的.py源码目录,通过以下命令打包成exe文件: pyinstaller -F -w -i "D:\\xxxxxx\\app.ico" Test.py 基础的命令格式是 pyinstaller

    3K20

    还敢逃课,老师用Python做了个随机点名系统,还逃嘛?

    作者:叶庭云 源自:快学python 接下来这篇分享一个随机点名的系统并把它打包成exe 一、实现随机点名 # -*- coding: UTF-8 -*- """ @File :随机点名系统.py...二、pyinstaller打包成exe PyInstaller是一个跨平台的Python应用打包工具,支持Windows/Linux/MacOS三大主流平台,能够把 Python 脚本及其所在的 Python...解释器打包成可执行文件,从而允许最终用户在无需安装 Python 的情况下执行应用程序。...warnxxxx.txt文件记录了生成过程中的警告/错误信息。如果 PyInstaller 运行有问题,需要检查warnxxxx.txt文件来获取错误的详细内容。...命令行输入以下代码: pyinstaller -F -i .icon图标文件路径 .py文件路径 -F | --onefile:生成单一的可执行文件 -i | --icon:为执行文件指定图标 默认生成在

    63331

    python中的路径问题汇总

    路径书写格式 windows系统中,’\’与’/’均可以在书写路径中使用,但在字符串里面\被作为转义字符使用 网页网址和linux、unix系统下一般都用’/‘ python在描述路径时有两种方式...: ‘d:\a.txt’,转义的方式 r’d:\a.txt’,声明字符串不需要转义 ---- 问题1:其实python中文件的绝对路径可以直接复制window的路径, 如: C:\Users\Administrator...\Desktop\python\source.txt 这个路径是没有问题的 但是,其实你的绝对路径正确,但是执行报错,那么就是你文件名的问题,如: C:\Users\Administrator\Desktop...\python\t1.txt 这个路径绝对会报错,因为 \t被转义了。...python就会解析为C:\Users\Administrator\Desktop\python 1.txt 这个时候肯定会报错的 若果你改成下面的写法就不会报错啦(推荐使用此写法“/”,可以避免很多异常

    1.5K20

    Python打包成exe可执行文件

    在项目上,帮财务开发了一个小工具,但财务不会用python,需要帮忙打包成exe可执行文件。目前比较常见的打包exe方法都是通过Pyinstaller来实现的,本文也将使用这种常规方法。...,存入列表中 fileList = os.listdir(path) n = 0 for i in fileList: # 设置旧文件名(就是路径+文件名) oldname = path...已经生成了一个名为changename的exe应用程序, Pyinstaller参数详解 Pyinstaller -F -w -i tu.ico changename.py 解释一下其中Pyinstaller...不带控制台的打包 Pyinstaller -F -w -i tu.ico changename.py 打包指定exe图标打包 以上三个是比较常用的参数,其他参数详见下表 ico图片生成 一个是可以找专门的...在压缩打包之前,先简单说一下为什么Python打包过大? Python打包exe,不但体积大而且运行奇慢。解释型语言大都是这个样子,只不过Python尤其突出。

    1.2K30

    2分钟将Python转换为exe

    “如何将Python脚本转换为.exe文件?” 每个python开发人员在想与外部共享他们开发的python应用程序时都会问这个问题。...什么是Pyinstaller? Pyinstaller是一个python软件包,它将Python应用程序及其所有模块/依赖项捆绑到一个软件包中。...所述dist文件夹中包含的应用程序捆绑和一个可执行文件(.exe文件捆绑的应用程序文件夹中)的文件。 当您运行.exe文件时,您将获得与从python解释器运行时相同的输出。...这里的一个问题是,仍然不能单独共享.exe文件,因为要运行该.exe文件,需要有很多依赖文件。 Pyinstaller为我们提供了各种标志,可帮助我们修改捆绑的应用程序。...该-i / -icon标志取路径.ICO图标图像文件。 ? 设置.exe的Pyinstaller图标 此命令将使用您的自定义图标创建一个独立的可执行文件。

    2.7K10
    领券