已pip安装Kivy并可在CMD导入,但运行代码仍报AttributeError错误求助
问题排查与解决
嘿,这个问题我太熟悉了!先看你给出的回溯信息里的关键内容:
File "c:\Users\HYPER\Desktop\training.py\kivy.py", line 2, in
kivy.require('1.9.0')
AttributeError: module 'kivy' has no attribute 'require'
问题根源
Python在导入模块时,会优先从当前脚本所在的目录查找文件。你当前工作目录里恰好有一个自己创建的kivy.py文件,当你执行from kivy.app import App时,Python导入的不是你通过pip安装的官方Kivy库,而是你自己写的这个同名文件——它自然没有官方库自带的require属性,所以报错了。
解决方案
两步就能搞定:
- 重命名或删除你自己的
kivy.py文件:把它改成别的名字(比如my_kivy_test.py),彻底避免和官方Kivy库的模块名冲突。 - 删除当前目录下的
__pycache__文件夹:Python会为模块生成缓存文件,即使重命名了自己的文件,残留的缓存可能还会导致异常,删掉它就没问题了。
之后再运行你的测试代码:
from kivy.app import App from kivy.uix.button import Button class TestApp(App): def build(self): return Button(text='Hello World') TestApp().run()
这样就能正常弹出带有"Hello World"按钮的Kivy窗口了!
内容的提问来源于stack exchange,提问作者Sepehr Jafari
相关产品推荐
相关产品推荐

