2013-10-01 35 views
7

我想第一次運行kivy。我使用默認的程序。嘗試運行KIVY,第一次

from kivy.app import App 
from kivy.uix.widget import Widget 


class PongGame(Widget): 
    pass 


class PongApp(App): 
    def build(self): 
     return PongGame() 


if __name__ == '__main__': 
    PongApp().run() 

我得到這個錯誤:

################################## 
done bootstraping kivy...have fun!\n 
running "python.exe C:\Python27\hello.py" \n 
Traceback (most recent call last): 
    File "C:\Python27\hello.py", line 1, in <module> 
    from kivy.app import App 
ImportError: No module named kivy.app 
Press any key to continue . . . 

很多人在網上提出的問題,但沒有人提到的解決方案。

+3

「我得到這個錯誤」什麼錯誤?請提供完整的追溯 – TerryA

+0

我已經提到了錯誤 – user2834165

+0

它似乎沒有安裝。 [安裝]中是否有任何問題(http://kivy.org/docs/installation/installation-windows.html)?如果您運行「pydoc模塊」,則應列出Kivy –

回答

14

UPDATE:根據你所得到的錯誤 - 你現在剛剛粘貼的,在我下面的原始響應之後,你似乎不僅缺少PyGame,而且缺少Kivy本身。繼續並運行pip install kivy

但是在你這樣做之前,我建議你看看virtualenv,並將該項目特定的所有Python包安裝在爲該項目創建的virtualenv中。如果你不想這樣做,你必須運行sudo pip install kivy來全局安裝Kivy(假設你在OS X或Linux上)。在Windows上,不應該需要sudo。 (另外,我確定下面的信息也會有用 - 因爲你甚至沒有Kivy,這意味着你會遇到PyGame沒有安裝Kivy的問題。 )

原來的答案:

短版:

你錯過pygame的,這是Kivy的依賴。

龍版本:

既然你沒有告訴我們是什麼錯誤,我繼續跑我OS X 10.8機器上的代碼,並得到這個:

$ python main.py 
[INFO ] Kivy v1.7.2 
... 
[CRITICAL] [Window  ] Unable to find any valuable Window provider at all! 
[CRITICAL] [App   ] Unable to get a Window, abort. 

谷歌搜索那個錯誤讓我着迷於http://kivy.org/docs/installation/troubleshooting-macosx.html

因此,我繼續在http://juliaelman.com/blog/2013/04/02/installing-pygame-on-osx-mountain-lion/的幫助下安裝PyGame;除了我在安裝的virtualenv它:

$ pip install hg+http://bitbucket.org/pygame/pygame 

後:

$ python yourcode.py 
[INFO ] Kivy v1.7.2 
Purge log fired. Analysing... 
Purge finished ! 
[INFO ] [Logger  ] Record log in /Users/erik.allik/.kivy/logs/kivy_13-10-01_2.txt 
[INFO ] [Factory  ] 144 symbols loaded 
[DEBUG ] [Cache  ] register <kv.lang> with limit=None, timeout=Nones 
[DEBUG ] [Cache  ] register <kv.image> with limit=None, timeout=60s 
... 
[INFO ] [OSC   ] using <multiprocessing> for socket 
[DEBUG ] [Base  ] Create provider from mouse 
[INFO ] [Base  ] Start application main loop 

而且我得到一個不錯的Kivy窗口彈出!

+0

是的,請參閱我的答案開始處的更新。而且,他只在我發佈了我的初始回覆後才粘貼錯誤;在此之前,不可能知道他在哪個平臺上。另外,我已經告訴他要安裝Kivy以及如何去做,所以我不明白你的意見。 –

+1

對不起。忘了它!謝謝! – user2834165

+0

@ user2834165:該評論是針對其他人btw :)不知道你應該對此感到抱歉! –

1

也許它更簡單,它適合我。在kivy網頁上爲windows操作系統提供了一個「便攜包」,因此您不必安裝任何「系統」。

然後他們解釋如何在發送到菜單上創建這個'便攜包'的快捷方式。我已經粘貼了.bat而不是它的快捷方式(從來沒有說我很聰明),而且我(顯然)也有同樣的錯誤。如果我們可以稱之爲錯誤。

希望它也適用於你。