鱼C论坛

 找回密码
 立即注册
查看: 2955|回复: 10

[技术交流] 双击无法执行Python文件的2种情况及解决方案

[复制链接]
发表于 2023-3-1 11:46:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
双击无法执行 Python 文件的 2 种情况及解决方案


情况一:Python 文件实际上是成功执行了,但却一闪而过,从而看不到执行结果

原因:

这种情况比较常见,是控制台程序执行完就立刻退出,我们还没来得及看结果,它就消失了~

解决方案:

因为并不是错误,而是跑得太快,所以解决方案也简单,

我们可以在需要程序停留(在控制台)的时候位置,加入 os.system("pause") 或者 input() 即可:
import os

print("I love FishC.")
os.system("pause")
1.png

OK,下面一种情况就比较魔幻了~


情况二:双击 Python 文件也是一闪而过,代码也没有语法错误,但程序就是不执行

我也是这两天写代码的时候遇到了这个问题,代码如下:
import tinify

tinify.key = # 此处填写在 https://tinify.cn/ 申请的key

def hint(func):
    def call_func(source, target):
        print("压缩处理中,请稍后...")
        func(source, target)
        print("处理完成~")
    return call_func

@hint
def compress(source, target): 
    source = tinify.from_file(source)
    source.to_file(target)

if __name__ == "__main__":
    source = input("请输入压缩前的文件名:")
    target = input("请输入压缩后的文件名:")
    compress(source, target)
使用 IDLE 执行,完全没毛病,程序可以成功实现~

不过,换成双击源代码执行的方法,程序就没办法成功执行了……

注意看,代码中存在 input() 函数,如果程序能够被成功执行,肯定会暂停下来等待用户输入信息。

可是并没有!

原因:

这里就不卖关子了,导致这个隐蔽问题的原因是安装了多个版本的 Python。

然后我们安装的模块不在 Python 启动器的默认版本中,

从而导致在导入模块的时候,就出错了!

反正是一闪而过,出错了我们也看不到……

解决方案:

Python 启动器默认是安装在 C:\Windows\py.exe 中。

我们找到它的路径,然后在同个文件夹中创建 py.inipyw.ini 文本文件:

2023-03-01_11-35-43.png

填入以下内容(这里希望它以 Python 3.9 的版本启动):
[defaults]
python=3.9

评分

参与人数 2荣誉 +4 鱼币 +4 贡献 +3 收起 理由
liuhongrun2022 + 2 + 2 + 3 鱼C有你更精彩^_^
歌者文明清理员 + 2 + 2 感谢楼主无私奉献!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-3-1 11:51:16 | 显示全部楼层
本帖最后由 歌者文明清理员 于 2023-3-1 18:15 编辑

@小甲鱼
我觉得@小甲鱼 的这篇文章可以上精华


猜猜我没他好友咋 at 的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 0 反对 1

使用道具 举报

发表于 2023-3-1 11:54:05 | 显示全部楼层
咦,奇怪
小甲鱼电脑的用户名咋成"goodb"了
是小甲鱼换了吗,因为路径不支持中文字符?
是重装了系统还是新建了用户?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-3-1 12:14:36 | 显示全部楼层
歌者文明清理员 发表于 2023-3-1 11:54
咦,奇怪
小甲鱼电脑的用户名咋成"goodb"了
是小甲鱼换了吗,因为路径不支持中文字符?

哈哈,历史原因~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-1 17:35:34 | 显示全部楼层
歌者文明清理员 发表于 2023-3-1 11:51
@小甲鱼
我觉得@小甲鱼 的这篇文章可以上精华

简简单单
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-1 17:49:30 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-1 18:10:07 | 显示全部楼层
歌者文明清理员 发表于 2023-3-1 11:51
@小甲鱼
我觉得@小甲鱼 的这篇文章可以上精华

404了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-1 18:12:37 | 显示全部楼层

咋 404 了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-1 18:14:23 | 显示全部楼层

你发的第一个帖子点击@小甲鱼就404了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-1 18:15:24 | 显示全部楼层
元豪 发表于 2023-3-1 18:14
你发的第一个帖子点击@小甲鱼就404了

路径敲错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-1 18:34:43 | 显示全部楼层

你指的是这个?

405预警,千万别点,点了405 15分钟

https://fishc.com.cn/bestanswer.php?mod=team
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-2 01:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表