как взять python условных выражений в str () - PullRequest
0 голосов
/ 29 апреля 2020

код python 3.6

#database contains rows (relationships) of the form:
# (autoincremented id, booleans, column3, column4)
# ejm: (1, "A || B || C", "data1", "data2")


def function (booleans):
     global list1
     global list2

     '' 'takes `booleans` and queries the database to retrieve
        column3, and column4 '' '

     list1 = column3
     list2 = column4

     return list1, list2


if A:
     if B:
         if C:
             function ('A || B || C')
         elif D:
             function ('A || B || D')
     elif E:
         if C:
             function ('A || E || C')
        
print (list1)
print (list2)

# this is olnly an example
#if `B` is `False` then `E` would have to be `True`

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

Итак, вопрос было бы, как автоматически дать аргумент функции (bool), не делая это вручную в условных выражениях? . ДСН

1 Ответ

0 голосов
/ 29 апреля 2020

Не уверен, правильно ли я понимаю проблему, но если я это сделаю, то лучше всего будет заменить ваши отдельные переменные A, B et c. с указанием:

dic = {}
dic['A'] = True
dic['B'] = False
dic['C'] = True
# etc.
s = ' || '.join([k for k, v in dic.items() if v]) 
# for the above data, s is now 'A || C' 
function(s)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...