Конечно, вы можете использовать sqlite3, но самый простой способ хранения базовых данных для приложения kivy, как, например, ваш пример, - это использовать файл json с собственным классом JsonStore в kivy.Преимущество размещения файла в нужном месте, в зависимости от платформы, на которой он развернут, вам не нужно заботиться, где именно.
Вот простой пример использования get (), put ()и существующие методы () для хранения набранного текста из TextInput и загрузки его в метку.(Вам не нужно создавать сам файл, просто инициализируйте объект и напишите в нем (put ()).
from kivy.uix.boxlayout import BoxLayout
from kivy.storage.jsonstore import JsonStore
from kivy.base import runTouchApp
from kivy.lang import Builder
from kivy.properties import ObjectProperty
kv='''
RootWidget:
orientation: 'vertical'
BoxLayout:
TextInput:
id: txtinpt
Label:
id: lbl
text: root.stored_data.get('mydata')['text'] if root.stored_data.exists('mydata') else ''
Button:
size_hint_y: .3
text: 'Submit'
on_press:
root.stored_data.put('mydata', text=txtinpt.text)
lbl.text = txtinpt.text
'''
class RootWidget(BoxLayout):
stored_data = ObjectProperty(None)
def __init__(self, *args, **kwargs):
super(BoxLayout, self).__init__(*args, **kwargs)
self.stored_data = JsonStore('data.json')
runTouchApp(Builder.load_string(kv))
Если вы новичок в Json, это файл, содержащий списокпары, значение которых само по себе может быть новым списком пары.почти как в python dict.
Для класса JivStore от kivy предполагается, что вы работаете минимум с двумя уровнями, поэтому {"mydata": {"text": "То, что вы написали в последний раз«}} .В этом простом примере не имеет особого смысла иметь вложенный dict, но в целом это будет именно то, что вам нужно для реальных приложений, например, если вы хотите взять данные о контактах для нескольких контактов, или вы хотите хранить различные конфигурациидля нескольких виджетов для самого приложения (в этом случае вы можете прочитать (получить ()) данные перед загрузкой виджетов, вероятно, в методе build () класса приложения.
ссылка: https://kivy.org/docs/api-kivy.storage.html