小甲鱼 发表于 2023-3-1 11:46:55

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

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

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

原因:

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

解决方案:

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

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

import os

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


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.ini 和 pyw.ini 文本文件:



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


python=3.9

歌者文明清理员 发表于 2023-3-1 11:51:16

本帖最后由 歌者文明清理员 于 2023-3-1 18:15 编辑

@小甲鱼
我觉得@小甲鱼 的这篇文章可以上精华
{:10_250:}

猜猜我没他好友咋 at 的

歌者文明清理员 发表于 2023-3-1 11:54:05

咦,奇怪
小甲鱼电脑的用户名咋成"goodb"了
是小甲鱼换了吗,因为路径不支持中文字符?
是重装了系统还是新建了用户?

小甲鱼 发表于 2023-3-1 12:14:36

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


哈哈,历史原因~~

liuhongrun2022 发表于 2023-3-1 17:35:34

歌者文明清理员 发表于 2023-3-1 11:51
@小甲鱼
我觉得@小甲鱼 的这篇文章可以上精华



简简单单
@小甲鱼

歌者文明清理员 发表于 2023-3-1 17:49:30

liuhongrun2022 发表于 2023-3-1 17:35
简简单单

其实直接
@小甲鱼
就行
@小甲鱼

元豪 发表于 2023-3-1 18:10:07

歌者文明清理员 发表于 2023-3-1 11:51
@小甲鱼
我觉得@小甲鱼 的这篇文章可以上精华



404了

歌者文明清理员 发表于 2023-3-1 18:12:37

元豪 发表于 2023-3-1 18:10
404了

咋 404 了?

元豪 发表于 2023-3-1 18:14:23

歌者文明清理员 发表于 2023-3-1 18:12
咋 404 了?

你发的第一个帖子点击@小甲鱼就404了

歌者文明清理员 发表于 2023-3-1 18:15:24

元豪 发表于 2023-3-1 18:14
你发的第一个帖子点击@小甲鱼就404了

路径敲错了

liuhongrun2022 发表于 2023-3-1 18:34:43

歌者文明清理员 发表于 2023-3-1 18:15
路径敲错了

你指的是这个?

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

https://fishc.com.cn/bestanswer.php?mod=team
页: [1]
查看完整版本: 双击无法执行Python文件的2种情况及解决方案