Python 无效语法-kivy
第一次学习kivy,在启动Python 无效语法-kivy,python,python-3.x,kivy,Python,Python 3.x,Kivy,第一次学习kivy,在启动.kv文件时遇到了一个问题 main.py: import kivy from kivy.app import App from kivy.uix.widget import Widget from kivy.uix.gridlayout import GridLayout class Grid(Widget): pass class App(App): def build(self): return Grid() if __nam
.kv
文件时遇到了一个问题
main.py:
import kivy
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.gridlayout import GridLayout
class Grid(Widget):
pass
class App(App):
def build(self):
return Grid()
if __name__ == '__main__':
App().run()
#:kivy 2.0.0
<Grid>:
Label:
text: "Hello World!"
Traceback (most recent call last):
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 87, in _run_code
exec(code, run_globals)
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy\__main__.py", line 45, in <module>
cli.main()
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy/..\debugpy\server\cli.py", line 444, in main
run()
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy/..\debugpy\server\cli.py", line 285, in run_file
runpy.run_path(target_as_str, run_name=compat.force_str("__main__"))
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 267, in run_path
code, fname = _get_code_from_file(run_name, path_name)
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 242, in _get_code_from_file
code = compile(f.read(), fname, 'exec')
File "d:\python\kivy\tutorial\tutorial2\file.kv", line 1
<Grid>:
^
SyntaxError: invalid syntax
文件.kv:
import kivy
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.gridlayout import GridLayout
class Grid(Widget):
pass
class App(App):
def build(self):
return Grid()
if __name__ == '__main__':
App().run()
#:kivy 2.0.0
<Grid>:
Label:
text: "Hello World!"
Traceback (most recent call last):
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 87, in _run_code
exec(code, run_globals)
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy\__main__.py", line 45, in <module>
cli.main()
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy/..\debugpy\server\cli.py", line 444, in main
run()
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy/..\debugpy\server\cli.py", line 285, in run_file
runpy.run_path(target_as_str, run_name=compat.force_str("__main__"))
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 267, in run_path
code, fname = _get_code_from_file(run_name, path_name)
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 242, in _get_code_from_file
code = compile(f.read(), fname, 'exec')
File "d:\python\kivy\tutorial\tutorial2\file.kv", line 1
<Grid>:
^
SyntaxError: invalid syntax
#:kivy 2.0.0
:
标签:
文字:“你好,世界!”
错误代码:
import kivy
from kivy.app import App
from kivy.uix.widget import Widget
from kivy.uix.gridlayout import GridLayout
class Grid(Widget):
pass
class App(App):
def build(self):
return Grid()
if __name__ == '__main__':
App().run()
#:kivy 2.0.0
<Grid>:
Label:
text: "Hello World!"
Traceback (most recent call last):
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 87, in _run_code
exec(code, run_globals)
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy\__main__.py", line 45, in <module>
cli.main()
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy/..\debugpy\server\cli.py", line 444, in main
run()
File "c:\Users\megaa\.vscode\extensions\ms-python.python-2020.12.424452561\pythonFiles\lib\python\debugpy/..\debugpy\server\cli.py", line 285, in run_file
runpy.run_path(target_as_str, run_name=compat.force_str("__main__"))
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 267, in run_path
code, fname = _get_code_from_file(run_name, path_name)
File "C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py", line 242, in _get_code_from_file
code = compile(f.read(), fname, 'exec')
File "d:\python\kivy\tutorial\tutorial2\file.kv", line 1
<Grid>:
^
SyntaxError: invalid syntax
回溯(最近一次呼叫最后一次):
文件“C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py”,第197行,位于\u run\u模块\u as\u main中
返回运行代码(代码、主全局、无、,
文件“C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py”,第87行,在运行代码中
exec(代码、运行\全局)
文件“c:\Users\megaa\.vscode\extensions\ms python.python-2020.12.424452561\pythonFiles\lib\python\debugpy\\uuuuuuuuuuu main\uuuuuuuuuu.py”,第45行
cli.main()
文件“c:\Users\megaa\.vscode\extensions\ms python.python-2020.12.424452561\pythonFiles\lib\python\debugpy/。\debugpy\server\cli.py”,主目录第444行
运行()
文件“c:\Users\megaa\.vscode\extensions\ms python.python-2020.12.424452561\pythonFiles\lib\python\debugpy/。\debugpy\server\cli.py”,第285行,在run\u文件中
runpy.run\u路径(target\u as\u str,run\u name=compat.force\u str(“\uuuu main\uuu”))
文件“C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py”,第267行,在运行路径中
代码,fname=\u从\u文件(运行\u名称,路径\u名称)获取\u代码\u
文件“C:\Users\megaa\AppData\Local\Programs\Python\Python39\lib\runpy.py”,第242行,在\u-get\u-code\u-from\u文件中
代码=编译(f.read(),fname,“exec”)
文件“d:\python\kivy\tutorial\tutorial2\File.kv”,第1行
:
^
SyntaxError:无效语法
请记住,您的.kv文件是一个设计文件。我们必须在python脚本中加载它
为此,请在main.py中执行以下操作
现在.kv文件已加载,并应提供预期的输出
快乐学习
编辑1:
拆下支架,它应处于运行状态。
在file.kv中
编辑2:
My main.py文件:
输出Kivy窗口:
![output\u kivy\u窗口][https://imgur.com/a/819K20A]您的代码中没有任何东西会加载file.kv。您的错误看起来很可疑,好像您试图将其作为python文件运行。您能确切解释一下您在做什么吗?我做了yt教程中所做的一切。当我运行python文件时,一切正常,但当我运行kivy文件时,会收到此错误。您提到我在那里我的代码中没有任何东西会加载file.kv,如何加载?kv文件不是python代码,您不能使用python解释器运行它,而应该通过python文件加载它。您可能误解了youtube教程,或者它是错误的。请阅读kivy文档或更好的教程,了解kv文件的工作原理。好的,但可以启动.kv文件way返回我上面提到的错误:是一个规则,网格:是一个根小部件。为了理解差异检查[因此,在原始.kv文件中,定义了小部件,并将规则应用于产生错误的不存在的小部件。通过此编辑,根小部件变得存在(最新代码更改):不起作用,“语法错误^Grid:”同样的错误?它对我来说非常有效。检查混合缩进。在.kv文件中应该包含制表符或空格。只需复制粘贴我的.py和.kv代码并运行它,然后检查我的输出窗口的imgur链接