kivy - 将用户输入保存到 python 列表中
kivy - save user input into a python list
我在理解 kivy 和 python 之间的相互关系时遇到一些困难。
我正在尝试做一些超级简单的事情,作为第一步,如果有人能举个例子那就太好了:
一旦用户输入数据并按 "enter",我如何将输入数据存储到 python 列表中?
谢谢
这就是一个例子。用户可以输入 3 个东西,它们被存储在一个数组中。如果您希望用户输入一件事并将其存储在一个数组中,您将不得不拆分输入。
result = []
for i in range(3):
answer = input()
result.append(answer)
print(result)
注意:input()
是 python2.x
中的 raw_input()
在kivy
中:
from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput
class Screen(GridLayout):
def __init__(self, **kwargs):
super(Screen, self).__init__(**kwargs)
self.input = TextInput(multiline=False)
self.add_widget(self.input)
self.input.bind(on_text_validate=self.print_input)
def print_input(self, value):
print(value.text)
class MyApp(App):
def build(self):
return Screen()
if __name__ == '__main__':
MyApp().run()
这个简单的脚本将为您提供一个输入框,当您按下回车键时,它会将其文本打印到终端。如果您愿意,您可以轻松地将其存储在列表中。
我在理解 kivy 和 python 之间的相互关系时遇到一些困难。
我正在尝试做一些超级简单的事情,作为第一步,如果有人能举个例子那就太好了: 一旦用户输入数据并按 "enter",我如何将输入数据存储到 python 列表中? 谢谢
这就是一个例子。用户可以输入 3 个东西,它们被存储在一个数组中。如果您希望用户输入一件事并将其存储在一个数组中,您将不得不拆分输入。
result = []
for i in range(3):
answer = input()
result.append(answer)
print(result)
注意:input()
是 python2.x
raw_input()
在kivy
中:
from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput
class Screen(GridLayout):
def __init__(self, **kwargs):
super(Screen, self).__init__(**kwargs)
self.input = TextInput(multiline=False)
self.add_widget(self.input)
self.input.bind(on_text_validate=self.print_input)
def print_input(self, value):
print(value.text)
class MyApp(App):
def build(self):
return Screen()
if __name__ == '__main__':
MyApp().run()
这个简单的脚本将为您提供一个输入框,当您按下回车键时,它会将其文本打印到终端。如果您愿意,您可以轻松地将其存储在列表中。