Почему я получаю синтаксическую ошибку при назначении словаря одной строкой для l oop? - PullRequest
1 голос
/ 29 мая 2020

Я пытался присвоить 'False' dic [0] dic [49] вот так.

>>> dic = {}
>>> [ dic[i] = False for i in range(50)]

но я получил это сообщение об ошибке.

  File "<stdin>", line 1
    [ dic[i] = False for i in range(50)]
             ^
SyntaxError: invalid syntax

It работает таким образом.

for i in range(50):
    dic[i] = False

Почему я не могу использовать одну строку для l oop для назначения словаря?

1 Ответ

3 голосов
/ 29 мая 2020

Это [dic[i] = False for i in range(50)] не одиночное для l oop, это понимание списка для сбора значений.

Вам нужно понимание dict (в конце раздела Dict)

dic = {i: False for i in range(50)}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...