能否直接双击运行python程序
大家好,对于很多使用python的初学者来说,总是这样的问题,比如一个用python写的烧录脚本,总是需要再cmd窗口输入很多cd :d/...,还有很多一大堆路径,最后才可以烧录或打开脚本,非常繁琐,能否直接在桌面上弄一个图标,然后双击就打开脚本,或双击后再按回车键就开始烧录,能否不需要用打包工具打包成exe来实现这个呢? 我也想要知道.... 如果有请告诉我 具体一点,现在就假设你要烧录一个程序,写出你在这个过程中用到的全部命令
人造人 发表于 2021-12-23 16:35
具体一点,现在就假设你要烧录一个程序,写出你在这个过程中用到的全部命令
所有的指令就是各种cd 指到最后的py路径而已,没有其他特别的指令 world_of_0_and_ 发表于 2021-12-23 16:43
所有的指令就是各种cd 指到最后的py路径而已,没有其他特别的指令
具体一点,像下面这样的
下面这是我编译两个源文件生成main这个可执行文件
用到的全部命令
$ cd code/C/list
$ ls
list.clist.hmainmain.c
$ rm main
$ ls
list.clist.hmain.c
$ gcc -g -Wall -c main.c
$ ls
list.clist.hmain.cmain.o
$ gcc -g -Wall -c list.c
$ ls
list.clist.hlist.omain.cmain.o
$ gcc -g -Wall -o main main.o list.o
$ ls
list.clist.hlist.omainmain.cmain.o
$ 直接双击.py文件就可以运行了
或者右键.py文件创建快捷方式,把快捷方式移到桌面也可以 人造人 发表于 2021-12-23 16:44
具体一点,像下面这样的
下面这是我编译两个源文件生成main这个可执行文件
用到的全部命令
D:\路径 本帖最后由 jackz007 于 2021-12-23 17:07 编辑
如果完全不需要看到脚本输出的信息,也不需要用键盘交互,而且,脚本也确定不会出现运行问题,那么可以这样,把源代码的扩展名由 ".py" 改成 ".pyw",只要用鼠标左键双击脚本文件,脚本就可以脱离 CMD 窗口, "神不知,鬼不觉" 地开始运行了,这个方法适合编写 Python 的 GUI 代码。 怎么不能上传图片 jackz007 发表于 2021-12-23 17:03
如果完全不需要看到脚本输出的信息,而且,脚本也确定不会出现运行问题,那么可以这样,把源代码的 ...
我试了,双击完全没反应 人造人 发表于 2021-12-23 16:44
具体一点,像下面这样的
下面这是我编译两个源文件生成main这个可执行文件
用到的全部命令
因传不了图片,我就直接把输入的指令写在下面。我只在刚打开的cmd窗口输入了以下三个指令,都是路径指令,没其他的
cd D:\Backup\Documents\WeChat Files\y\FileStorage\File\2021-12\esptool
d:
D:\Backup\Documents\WeChat Files\y\FileStorage\File\2021-12\esptool>esptool.py world_of_0_and_ 发表于 2021-12-23 17:00
? 本帖最后由 jackz007 于 2021-12-23 17:13 编辑
world_of_0_and_ 发表于 2021-12-23 17:08
我试了,双击完全没反应
那你需要看到的反应是什么?我说过,这样做的前提是不需要用 CMD 窗口进行人机交互,而且,代码无 BUG。
你可以通过把一段文本写入一个文件来验证这个方法是否确实可行。如果文件被创建,而且内容符合预期,那就足可以证明这个方法确实是有效的。 hrpzcf 发表于 2021-12-23 16:54
直接双击.py文件就可以运行了
或者右键.py文件创建快捷方式,把快捷方式移到桌面也可以
直接双击,出来cmd黑色界面,然后马上闪退 jackz007 发表于 2021-12-23 17:10
那你需要看到的反应是什么?我说过,这样做的前提是不需要用 CMD 窗口进行人机交互,而且,代码 ...
因为这是一个烧录程序,烧录的时候大概要30秒钟,我双击.py是闪退,双击.pyw完全没反应 world_of_0_and_ 发表于 2021-12-23 17:11
直接双击,出来cmd黑色界面,然后马上闪退
在代码的最后添加一句
input('Press <Enter Key . . .>')
停住屏幕,看看屏幕输出的信息是什么 是不是需要在烧录程序里面写的路径txt文件,然后在主程序开头加载进去? 在桌面新建一个文件,文件名后缀是 .bat
内容是这个
cd D:\Backup\Documents\WeChat Files\y\FileStorage\File\2021-12\esptool
d:
D:\Backup\Documents\WeChat Files\y\FileStorage\File\2021-12\esptool>esptool.py
pause
就是你输入的全部指令,最后再加个 pause,作用就是按下任意键后退出
jackz007 发表于 2021-12-23 17:15
在代码的最后添加一句
停住屏幕,看看屏幕输出的信息是什么
双击后确实是停在Press <Enter Key ...>的界面,但再按回车后闪退 本帖最后由 jackz007 于 2021-12-23 17:27 编辑
world_of_0_and_ 发表于 2021-12-23 17:16
是不是需要在烧录程序里面写的路径txt文件,然后在主程序开头加载进去?
Windows Registry Editor Version 5.00
@="cmd.exe /k cd %1"
把代码框中的文本复制粘贴进记事本,保存为 ".reg" 文件(扩展名为 ".reg"),然后,用鼠标左键双击,将此文件导入注册表,这个时候,用 Windows 资源管理器找到保存有需要运行 Python 源代码所在的子目录,用鼠标指针指向此子目录,鼠标右键在弹出式菜单上选择 "DOS Prompt Here",于是,你就可以获得一个 Python 源代码所在路径的 CMD 窗口,这时,通过下面的命令行运行 Python 脚本:
Python x.py
当然,这里假定 Python 脚本文件名是 "x.py"。
这样运行脚本的好处是,当脚本存在 BUG 时,可以直接看到 Python 给出的错误信息。
页:
[1]
2