Как исправить вложенный цикл if / for - PullRequest
1 голос
/ 11 октября 2019

Я пытаюсь изменить флаг на True, если во вложенном словаре более одного ключа. В настоящее время код правильно подсчитывает количество ключей, но он не меняет флаг на true.

Я выполнил как сокращенную версию ниже, так и более развернутую версию, но безрезультатно. Я также перестроил оператор несколькими способами, но не могу заставить его срабатывать.

for page in sd:
        chartcount = len(sd[page])
        print '\n', 'Slide no.', page, '--There is/are', chartcount, 'Chart(s).'
        [combinecheck is True if chartcount > 0 else False]
        print combinecheck

Я ожидаю: Слайд №. 1 - Есть / есть 2 графика. Правда

Получаю: Слайд №. 1 - Есть / есть 2 графика. Ложные

Ответы [ 2 ]

2 голосов
/ 11 октября 2019

Не уверен, что вы пытаетесь сделать с [] part. Это похоже на понимание списка (это было бы полезно, если бы вы создавали список, которым вы не являетесь. И вы нигде не назначаете этот список), вам это не нужно. Вместо этого положите туда:

combinecheck = chartcount > 0
1 голос
/ 11 октября 2019
[combinecheck is True if chartcount > 0 else False]

не присваивается combinecheck.

Попробуйте:

combinecheck = False
if chartcount > 0:
  combinecheck = True
...