我从他们的网站上开始了Kivy教程。按照启动代码,我遇到了语法错误。我已经搜索了很多答案,但没有一个不适用于我的情况。
python文件名为'PongApp.py':
# -*- coding: utf-8 -*-
"""
Created on Thu Sep 7 21:16:31 2017
@author: 917k
"""
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()
我还创建了一个名为'Pong.kv'的.kv文件,它与'PongApp.py'位于同一目录中。
Pong.kv:
# -*- coding: utf-8 -*-
#:kivy 1.10.0
<PongGame>:
canvas:
Rectangle:
pos: self.center_x = -5, 0
size: 10, self.height
Label:
font_size: 70
center_x: root.width / 4
top: root.top - 50
text: "0"
Label:
font_size: 70
center_x: root.width * 3 / 4
top: root.top - 50
text: "0"
错误消息:
pos: self.center_x = -5, 0
^
SyntaxError: invalid syntax
我已经阅读了关于在Kivy教程网站上命名.kv文件的说明,我想我理解正确。我怀疑某处可能存在缩进或命名错误,但我似乎无法找到它。
答案 0 :(得分:0)
# -*- coding: utf-8 -*-
#:kivy 1.10.0
<PongGame>:
canvas:
Rectangle:
pos: self.center_x = - 5, 0
size: 10, self.height
Label:
font_size: 70
center_x: root.width / 4
top: root.top - 50
text: "0"
Label:
font_size: 70
center_x: root.width * 3 / 4
top: root.top - 50
text: "0"
我认为你需要一个空格(pos:self.center_x = - &#34; here&#34; 5,0)我已经更新了上面的代码,所以再试一次运行
答案 1 :(得分:0)
您的kv文件中存在拼写错误。取代
pos: self.center_x = -5, 0
与
pos: self.center_x - 5, 0
# -*- coding: utf-8 -*-
#:kivy 1.10.0
<PongGame>:
canvas:
Rectangle:
pos: self.center_x - 5, 0
size: 10, self.height
Label:
font_size: 70
center_x: root.width / 4
top: root.top - 50
text: "0"
Label:
font_size: 70
center_x: root.width * 3 / 4
top: root.top - 50
text: "0"
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()