当前位置: 首页 > 知识库问答 >
问题:

Python pygame exe生成时出现cx\u冻结TCL\u库错误

步联
2023-03-14

我将按照本教程在pygame中制作一个蛇形游戏。这是我的设置。py代码

import cx_Freeze

executables = [cx_Freeze.Executable("snake.py")]

cx_Freeze.setup(
    name="Snake",
    options={"build_exe":{"packages":["pygame"], "include_files":["apple.png","Aenemy.png","bomb.png","cherry.png","enemy.png","fire.png","iceimg.png","snakebod(2).png","snakebod.png","Explosion.wav","Explosion2.wav","jump.wav","Pickup_Coin.wav","Powerup.wav","openingsong.mp3","highscores.txt",]}},

    description = "Snake Game made in python with pygame.",
    executables = executables
    )

当我试图在命令提示符中构建它时,我得到了这个错误

C:\Users\Accounts\Documents\snake

文件“C:\Python35\lib\os.py”,第681行,在getitem中,从None-KeyError:TCL\u-LIBRARY'KeyError:TCL\u-LIBRARY'

而且它不能建立。有人知道如何解决这个问题吗?谢谢

共有2个答案

桂德义
2023-03-14

假设您使用的是windows操作系统

在您的机器用户和系统变量中添加2个名为TCL_Library和TK_Library的环境变量

TK_Library

TCL_图书馆

环境变量

牟嘉
2023-03-14

我遇到了一个类似的错误,今天早上成功地解决了!将以下行添加到设置中。py代码

import os
os.environ['TCL_LIBRARY'] = "C:\\Program Files\\Python35\\tcl\\tcl8.6"
os.environ['TK_LIBRARY'] = "C:\\Program Files\\Python35\\tcl\\tk8.6"

您可能需要替换C:\Program Files\Python35\tcl\tcl8。6和C:\ProgramFiles\Python35\tcl\tk8。6与tcl8的确切路径相同。6和tk8。分别在您的系统上安装6个。

 类似资料:
  • 我setup.py密码是 谁能帮我解决这个问题。

  • 问题: 1.当我尝试安装在python或通过cmd它说: 错误:系统找不到路径:'C:\Program Files(x86)\Microsoft SDK\Windows\v8.1\lib' 正如您看到的,上面写着但我有。在我看来,这就是问题所在,但我该如何解决它呢? 2.我也下载了并在cmd中尝试了这个: python-mpip安装C:\Users\Super\Downloads\cx\u Fre

  • 我试图创建一个可执行文件的Python脚本Windows在Anaconda虚拟环境与cx_Freeze库。我试图用版本6.1做到这一点,但我陷入了错误。然后我cx_Freeze升级到版本6.2,这是我运行Pythonsetup.py构建时得到的输出: 以下是文件: 我已尝试重新安装matplotlib(,),但没有任何更改。

  • 这是我的设置。cx\u冻结的py文件 可执行文件是没有错误的。但是当我尝试运行它时,我得到以下窗口: 标题:cx\U冻结:主脚本中出现Python错误 内容:回溯(最后一次调用):文件“c:\Users\Admin\AppData\Local\Programs\Python\Python35-32\lib\site packages\cx\u Freeze\initscripts\uuuuuu s

  • 我无法从Azure Databricks建立到Oracle数据库的连接,尽管它在ADF中工作,我可以在那里查询表。但是ADF需要时间来过滤记录,所以我仍在尝试从Databricks连接。 我手动和使用init脚本遵循了这个Microsoft链接中的步骤,但错误似乎一直存在。 当我查看我的集群事件日志时,它说初始化脚本执行成功。 尝试建立连接时出现错误消息:DPI-1047:找不到64位Oracle

  • 这一行给我的错误: 错误:SELECT列表的表达式#1不在GROUP BY子句中,并且包含未聚合的列“hng_1.tags.id”,该列在功能上不依赖于GROUP BY子句中的列;这与sql\u mode=only\u full\u group\u by不兼容 如何更改查询以修复此错误?