New Kivy installation: AttributeError: 'module' object has no attribute 'require'
New Kivy installation: AttributeError: 'module' object has no attribute 'require'
kivy 1.10.0, python 3.4.5, windows 10, 使用 Anaconda 的 Spyder IDE
在我的 windows 10 计算机上尝试安装 kivy 遇到了很多麻烦之后,我能够...有点。我已将 python 降级到支持的最新版本。
我输入了 kivy 的股票代码以确保它能正常工作:
import kivy
kivy.require('1.0.6') # replace with your current kivy version !
from kivy.app import App
from kivy.uix.label import Label
class MyApp(App):
def build(self):
return Label(text='Hello world')
if __name__ == '__main__':
MyApp().run()
正在将我的版本更改为 1.10.0。但是我得到了以下错误并回溯:
Traceback (most recent call last):
File "<ipython-input-6-498c1728e978>", line 1, in
runfile('C:/Users/Andrew/Documents/Programming/Kivvv/UsageExample.py', wdir='C:/Users/Andrew/Documents/Programming/Kivvv')
File "C:\Users\Andrew\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 866, in runfile
execfile(filename, namespace)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "C:/Users/Andrew/Documents/Programming/Kivvv/UsageExample.py", line 12, in
kivy.require('1.10.0') # replace with your current kivy version !
AttributeError: 'module' object has no attribute 'require'
还有运行
print(dir(kivy))
return编辑了此列表:
['doc', 'loader', 'name', 'package', 'path', 'spec']
我的猜测是 kivy 没有正确安装,但我在安装它时遇到了很多麻烦,所以我不想重新安装它,直到它显然是下一个最佳选择。
此外,如果有帮助,当 运行在 kivy 网站上安装 kivy 过程时,几个步骤 return 关于 "splitlines" 的错误,即使每个步骤都成功完成--
Exception:
Traceback (most recent call last):
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\basecommand.py", line 215, in main
status = self.run(options, args)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\commands\install.py", line 335, in run
wb.build(autobuilding=True)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\wheel.py", line 749, in build
self.requirement_set.prepare_files(self.finder)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\req\req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\req\req_set.py", line 666, in _prepare_file
check_dist_requires_python(dist)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\utils\packaging.py", line 48, in check_dist_requires_python
feed_parser.feed(metadata)
File "C:\Users\Andrew\Anaconda3\lib\email\feedparser.py", line 177, in feed
self._input.push(data)
File "C:\Users\Andrew\Anaconda3\lib\email\feedparser.py", line 100, in push
parts = data.splitlines(True)
AttributeError: 'NoneType' object has no attribute 'splitlines'
不确定它是否有所作为,但我决定将其包括在内,以防它是了解正在发生的事情的良好线索。
非常感谢!!!
更新,5-12-17:
我继续尝试将程序粘贴到记事本中,然后 运行从那里安装它,但我收到了相同的错误消息。
然后我做了
python -m pip list
在 powershell 中,none 个弹出:
Kivy (1.10.0)
Kivy-Garden (0.1.4)
kivy.deps.angle (0.1.4)
kivy.deps.glew (0.1.9)
kivy.deps.sdl2 (0.1.17)
看来kivy终究没有安装。再次尝试 运行 安装后,这是我的电脑向我反馈的内容:
PS C:\Users\Andrew> python -m pip install kivy
Collecting kivy
Using cached Kivy-1.10.0-cp34-cp34m-win_amd64.whl
Collecting Kivy-Garden>=0.1.4 (from kivy)
Using cached kivy-garden-0.1.4.tar.gz
Requirement already satisfied: docutils in
c:\users\andrew\anaconda3\lib\site-packages (from kivy)
Requirement already satisfied: pygments in
c:\users\andrew\anaconda3\lib\site-packages (from kivy)
Exception:
Traceback (most recent call last):
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\basecommand.py",
line 215, in main
status = self.run(options, args)
File "C:\Users\Andrew\Anaconda3\lib\site-
packages\pip\commands\install.py", line 335, in run
wb.build(autobuilding=True)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\wheel.py", line 749, in build
self.requirement_set.prepare_files(self.finder)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\req\req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\req\req_set.py", line 666, in _prepare_file
check_dist_requires_python(dist)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\utils\packaging.py", line 48, in check_dist_requires_python
feed_parser.feed(metadata)
File "C:\Users\Andrew\Anaconda3\lib\email\feedparser.py", line 177, in feed
self._input.push(data)
File "C:\Users\Andrew\Anaconda3\lib\email\feedparser.py", line 100, in push
parts = data.splitlines(True)
AttributeError: 'NoneType' object has no attribute 'splitlines'
由于我没有收到 "kivy installed" 消息,看来这个 "splitlines" 属性错误正在阻止安装完成。知道我该如何解决这个问题吗?
所以在我看来你的问题更有可能是 ide。事实上,如果我是一个赌徒,我会用我所有的一切打赌你的 IDE 是问题所在。
请仔细阅读我的回答并尝试我发布的两个脚本。您现在需要做的最重要的事情是将 python 代码粘贴到记事本中,然后通过命令行 运行 粘贴它。
如果它有效,你就知道你的问题是什么了。如果它没有尝试我在下面列出的所有步骤。您的 ide 很可能指向了错误的路径或类似的东西。
请尝试以下操作。
第 1 步:
python -m pip list
找到您的 kivy 安装并验证它在那里,以及它的版本。您应该会看到类似
的内容
Kivy (1.10.0)
Kivy-Garden (0.1.4)
kivy.deps.angle (0.1.4)
kivy.deps.glew (0.1.9)
kivy.deps.sdl2 (0.1.17)
如果您看到那个东西,请复制粘贴下面的示例并尝试 运行ning 它。
第 2 步:脚本
import kivy
from kivy.app import App
from kivy.uix.label import Label
class MyApp(App):
def build(self):
return Label(text='Hello world')
if __name__ == '__main__':
MyApp().run()
如果你遇到同样的错误。
尝试以下方法
python -m pip show kivy
您应该会看到类似
的内容
Name: Kivy
Version: 1.10.0
Summary: A software library for rapid development of hardware-accelerated
multitouch applications.
Home-page: http://kivy.org
Author: Kivy Team and other contributors
Author-email: kivy-dev@googlegroups.com
License: MIT
Location: c:\python36-32\lib\site-packages
Requires: pygments, Kivy-Garden, docutils
如果你看到这个,即使你没有看到 运行 下面的命令
python -m pip check kivy
这将告诉您是否满足了 kivy 所需的所有依赖项。如果没有通过并安装它们。
根据我现有的信息,可能存在我无法帮助您解决的问题,因此我的最后一条建议是将此作为最后的手段。
python -m pip uninstall kivy
python -m pip install kivy==1.10.0
更新:
我从来没有用过 power shell 所以我不知道它是如何运作的。尝试使用命令 promot。你也在使用 Anacondas IDE 但你也在使用 Anaconda Python 吗?如果某些命令不同,您将不得不绕过它并使用官方工具。以确保这不是兼容性问题。 https://docs.continuum.io/anaconda/faq
根据我在错误代码中看到的内容,您的 kivy 安装已经完成并且正常。这意味着它与 spider 直接相关。
显示错误是因为您保存文件的文件名 'kivy.py' 与 kivy 核心包相矛盾。尝试重命名文件希望它有帮助。
kivy 1.10.0, python 3.4.5, windows 10, 使用 Anaconda 的 Spyder IDE
在我的 windows 10 计算机上尝试安装 kivy 遇到了很多麻烦之后,我能够...有点。我已将 python 降级到支持的最新版本。
我输入了 kivy 的股票代码以确保它能正常工作:
import kivy
kivy.require('1.0.6') # replace with your current kivy version !
from kivy.app import App
from kivy.uix.label import Label
class MyApp(App):
def build(self):
return Label(text='Hello world')
if __name__ == '__main__':
MyApp().run()
正在将我的版本更改为 1.10.0。但是我得到了以下错误并回溯:
Traceback (most recent call last):
File "<ipython-input-6-498c1728e978>", line 1, in runfile('C:/Users/Andrew/Documents/Programming/Kivvv/UsageExample.py', wdir='C:/Users/Andrew/Documents/Programming/Kivvv')
File "C:\Users\Andrew\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 866, in runfile execfile(filename, namespace)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile exec(compile(f.read(), filename, 'exec'), namespace)
File "C:/Users/Andrew/Documents/Programming/Kivvv/UsageExample.py", line 12, in kivy.require('1.10.0') # replace with your current kivy version !
AttributeError: 'module' object has no attribute 'require'
还有运行
print(dir(kivy))
return编辑了此列表:
['doc', 'loader', 'name', 'package', 'path', 'spec']
我的猜测是 kivy 没有正确安装,但我在安装它时遇到了很多麻烦,所以我不想重新安装它,直到它显然是下一个最佳选择。
此外,如果有帮助,当 运行在 kivy 网站上安装 kivy 过程时,几个步骤 return 关于 "splitlines" 的错误,即使每个步骤都成功完成--
Exception:
Traceback (most recent call last):
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\basecommand.py", line 215, in main
status = self.run(options, args)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\commands\install.py", line 335, in run
wb.build(autobuilding=True)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\wheel.py", line 749, in build
self.requirement_set.prepare_files(self.finder)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\req\req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\req\req_set.py", line 666, in _prepare_file
check_dist_requires_python(dist)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\utils\packaging.py", line 48, in check_dist_requires_python
feed_parser.feed(metadata)
File "C:\Users\Andrew\Anaconda3\lib\email\feedparser.py", line 177, in feed
self._input.push(data)
File "C:\Users\Andrew\Anaconda3\lib\email\feedparser.py", line 100, in push
parts = data.splitlines(True)
AttributeError: 'NoneType' object has no attribute 'splitlines'
不确定它是否有所作为,但我决定将其包括在内,以防它是了解正在发生的事情的良好线索。
非常感谢!!!
更新,5-12-17:
我继续尝试将程序粘贴到记事本中,然后 运行从那里安装它,但我收到了相同的错误消息。
然后我做了
python -m pip list
在 powershell 中,none 个弹出:
Kivy (1.10.0)
Kivy-Garden (0.1.4)
kivy.deps.angle (0.1.4)
kivy.deps.glew (0.1.9)
kivy.deps.sdl2 (0.1.17)
看来kivy终究没有安装。再次尝试 运行 安装后,这是我的电脑向我反馈的内容:
PS C:\Users\Andrew> python -m pip install kivy
Collecting kivy
Using cached Kivy-1.10.0-cp34-cp34m-win_amd64.whl
Collecting Kivy-Garden>=0.1.4 (from kivy)
Using cached kivy-garden-0.1.4.tar.gz
Requirement already satisfied: docutils in
c:\users\andrew\anaconda3\lib\site-packages (from kivy)
Requirement already satisfied: pygments in
c:\users\andrew\anaconda3\lib\site-packages (from kivy)
Exception:
Traceback (most recent call last):
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\basecommand.py",
line 215, in main
status = self.run(options, args)
File "C:\Users\Andrew\Anaconda3\lib\site-
packages\pip\commands\install.py", line 335, in run
wb.build(autobuilding=True)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\wheel.py", line 749, in build
self.requirement_set.prepare_files(self.finder)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\req\req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\req\req_set.py", line 666, in _prepare_file
check_dist_requires_python(dist)
File "C:\Users\Andrew\Anaconda3\lib\site-packages\pip\utils\packaging.py", line 48, in check_dist_requires_python
feed_parser.feed(metadata)
File "C:\Users\Andrew\Anaconda3\lib\email\feedparser.py", line 177, in feed
self._input.push(data)
File "C:\Users\Andrew\Anaconda3\lib\email\feedparser.py", line 100, in push
parts = data.splitlines(True)
AttributeError: 'NoneType' object has no attribute 'splitlines'
由于我没有收到 "kivy installed" 消息,看来这个 "splitlines" 属性错误正在阻止安装完成。知道我该如何解决这个问题吗?
所以在我看来你的问题更有可能是 ide。事实上,如果我是一个赌徒,我会用我所有的一切打赌你的 IDE 是问题所在。
请仔细阅读我的回答并尝试我发布的两个脚本。您现在需要做的最重要的事情是将 python 代码粘贴到记事本中,然后通过命令行 运行 粘贴它。
如果它有效,你就知道你的问题是什么了。如果它没有尝试我在下面列出的所有步骤。您的 ide 很可能指向了错误的路径或类似的东西。
请尝试以下操作。
第 1 步:
python -m pip list
找到您的 kivy 安装并验证它在那里,以及它的版本。您应该会看到类似
的内容Kivy (1.10.0)
Kivy-Garden (0.1.4)
kivy.deps.angle (0.1.4)
kivy.deps.glew (0.1.9)
kivy.deps.sdl2 (0.1.17)
如果您看到那个东西,请复制粘贴下面的示例并尝试 运行ning 它。
第 2 步:脚本
import kivy
from kivy.app import App
from kivy.uix.label import Label
class MyApp(App):
def build(self):
return Label(text='Hello world')
if __name__ == '__main__':
MyApp().run()
如果你遇到同样的错误。
尝试以下方法 python -m pip show kivy
您应该会看到类似
的内容Name: Kivy
Version: 1.10.0
Summary: A software library for rapid development of hardware-accelerated
multitouch applications.
Home-page: http://kivy.org
Author: Kivy Team and other contributors
Author-email: kivy-dev@googlegroups.com
License: MIT
Location: c:\python36-32\lib\site-packages
Requires: pygments, Kivy-Garden, docutils
如果你看到这个,即使你没有看到 运行 下面的命令
python -m pip check kivy
这将告诉您是否满足了 kivy 所需的所有依赖项。如果没有通过并安装它们。
根据我现有的信息,可能存在我无法帮助您解决的问题,因此我的最后一条建议是将此作为最后的手段。
python -m pip uninstall kivy
python -m pip install kivy==1.10.0
更新: 我从来没有用过 power shell 所以我不知道它是如何运作的。尝试使用命令 promot。你也在使用 Anacondas IDE 但你也在使用 Anaconda Python 吗?如果某些命令不同,您将不得不绕过它并使用官方工具。以确保这不是兼容性问题。 https://docs.continuum.io/anaconda/faq
根据我在错误代码中看到的内容,您的 kivy 安装已经完成并且正常。这意味着它与 spider 直接相关。
显示错误是因为您保存文件的文件名 'kivy.py' 与 kivy 核心包相矛盾。尝试重命名文件希望它有帮助。