Могу ли я назначить ссылку на идентификатор объекта Kivy в Python Dict

#python #kivy

#python #kivy

Вопрос:

Я новичок в python и kivy около недели назад и пишу свое приложение.

У меня есть страница с большим количеством меток и textinput, которые я создаю на языке kivy.

Таким образом, мне нужно было добавить метод / функцию в код python, чтобы я мог управлять свойствами объекта в зависимости от того, какая кнопка была нажата.

изначально мой код был таким. Я смог ссылаться на каждый конкретный объект и изменять его цвет текста и т.д. и т.п.

Сторона Python

 class AccWindow(Screen):
    def __init__(self, **kwargs):
        super(AccWindow, self).__init__(**kwargs)
        acc0_user_input = ObjectProperty(None)
        acc1_user_input = ObjectProperty(None)
 

Сторона Кв

 <AccWindow>:
    name: "acc_window"

    acc0_user_input: acc0_user_input
    acc0_user_record: acc0_user_record
    acc1_user_input: acc1_user_input
    acc1_user_record: acc1_user_record
    acc2_user_input: acc2_user_input
    acc2_user_record: acc2_user_record
 

поскольку существует множество объектов, на которые мне нужно ссылаться и управлять ими из логики python, чтобы управлять свойствами объектов.

я решил изменить цикл использования в вызовах функций, чтобы уменьшить количество кодов, необходимых для ввода.

таким образом, я хотел сохранить идентификатор объекта ref в dict, чтобы мой цикл мог получить доступ к необходимым аргументам для изменения связанных свойств объекта.

я получаю эту ошибку после того, как перехожу на приведенные ниже коды.

сторона питона

 class AccWindow(Screen):
 def __init__(self, **kwargs):
    super(AccWindow, self).__init__(**kwargs)
    user_input = {'0': ObjectProperty(None), '1': ObjectProperty(None), '2': ObjectProperty(None),
                  '3': ObjectProperty(None), '4': ObjectProperty(None), '5': ObjectProperty(None),
                  '6': ObjectProperty(None), '7': ObjectProperty(None), '8': ObjectProperty(None),
                  '9': ObjectProperty(None), '10': ObjectProperty(None), '11': ObjectProperty(None)}
 

сторона kv

 <AccWindow>:
name: "acc_window"

user_input['0']: acc0_user_input
user_record['0']: acc0_user_record
 

Ошибка

 178: user_input['0']: acc0_user_input ... 
Invalid property name
 

я что-то не так понимаю? или я не могу сохранить идентификатор ref в python dict?

Благодарен за любой ответ.

Комментарии:

1. это ошибка

2. >> 178: user_input[‘0’]: acc0_user_input … Недопустимое имя свойства