как добавить инструкцию elif на языке киви?

#python #kivy #kivy-language #kivymd

Вопрос:

Всем хорошего дня, я хочу спросить, как добавить заявление elif на языке Киви. Вот код в моем файле .kv:

 MDCard:  size_hint: None, None  size: 232.5, 23  orientation: "vertical"  pos: 352.5, 255   23/2  md_bg_color: [200/255, 200/255, 0/255, 1] if app.weekday == "2" else [0/255, 200/255, 0/255, 1]  

Я хочу добавить условие, что если app.weekday == «3»: md_bg_color: [200/255, 0/255, 0/255, 1]

Большое спасибо.

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

1. это обычный python, а не эксклюзивный kivy… я думаю, что нет единой ссылки на if elif … но вы можете сделать классическое if. В любом случае я бы рекомендовал вам создать дикт по умолчанию для выбора вашего md_bg_color или что-то в этом роде

2. @UlisesBussi большое тебе спасибо!! но я всего лишь новичок, так что не могли бы вы подсказать мне, что я должен делать?

3. хорошо, я ставлю это как вопрос, если есть какие-либо сомнения, дайте мне знать

4. и, пожалуйста, дайте мне знать, сработало ли это, у меня нет большого опыта работы в киви

5. @UlisesBussi ДА, ЭТО РАБОТАЕТ ОЧЕНЬ, ОЧЕНЬ COOOOOL

Ответ №1:

Ты можешь делать все, что хочешь, вот так:

 md_bg_color: [200/255, 200/255, 0/255, 1] if app.weekday == "2" else [0/255, 200/255, 0/255, 1] if app.weekday == "3" else [200/255, 0/255, 0/255, 1]  

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

1. спасибо тебе уууууууууууууууу!!!!

Ответ №2:

Привет, я поставлю это в качестве ответа.

  1. Это обычный язык python, и это «если однострочный»
  2. Там нет такой вещи, как если-elif-еще один лайнер, но вы можете использовать некоторые, если-еще сцепленные
  3. Я бы НЕ рекомендовал этого делать.

4)Вы можете создать диктант по умолчанию и получить к нему доступ днем, чтобы выбрать свой цвет:

 from collections import defaultdict #create default dict and default color default_color = [0/255, 200/255, 0/255, 1] color_dict_by_day = defaultdict(lambda: default_color)  #add other colors by key as "num"  color_dict_by_day["2"] = [200/255, 200/255, 0/255, 1] color_dict_by_day["3"] = [200/255, 0/255, 0/255, 1] # and so on....  #for last call your code block as:  MDCard:  size_hint: None, None  size: 232.5, 23  orientation: "vertical"  pos: 352.5, 255   23/2  md_bg_color: color_dict_by_day[app.weekday]  

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

1. ОМГ, ЭТО ФКН КОООООЛ, спасибо тебе огромное за то, что дал мне новые классные знания!!!