You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Уникальные элементы в множестве пар, задающих бинарное отношение
list_unique= []
foriinR:
i=list(i)
list_unique.extend(i)
list_unique=list(set(list_unique))
Во-первых, необязательно преобразовывать кортеж (tuple) в список (list), чтобы добавить его через метод extend, потому что extend просто сделает что-то типа:
То есть extend пройдётся по переданному через for, а значит нужно понимать, что ему пойдёт любой итерируемый объект. По кортежу тоже можно через for пройти, ведь он тоже итерируемый, поэтому необязательно его преобразовывать в список для добавления.
Кстати, по факту, вызов list тебе сделает что-то типа следующего:
for i in range(1, n + 1)
HasseDiagram/mainWindow.py
Line 157 in 516bd62
HasseDiagram/hasseDiagram.py
Line 47 in 516bd62
Вместо
for i in range(1, n + 1): i
можно использоватьfor i in range(n): i + 1
.Не забудь в теле цикла
i
на(i + 1)
заменить.Guard condition
Зачем
else
, если ты и так выкидываешь ошибку?HasseDiagram/mainWindow.py
Lines 130 to 132 in 516bd62
HasseDiagram/mainWindow.py
Lines 141 to 145 in 516bd62
HasseDiagram/mainWindow.py
Lines 146 to 151 in 516bd62
(а тут вообще
else
в неправильном месте висит)list_unique
HasseDiagram/mainWindow.py
Lines 133 to 138 in 516bd62
Во-первых, необязательно преобразовывать кортеж (tuple) в список (list), чтобы добавить его через метод
extend
, потому чтоextend
просто сделает что-то типа:То есть
extend
пройдётся по переданному черезfor
, а значит нужно понимать, что ему пойдёт любой итерируемый объект. По кортежу тоже можно черезfor
пройти, ведь он тоже итерируемый, поэтому необязательно его преобразовывать в список для добавления.Кстати, по факту, вызов list тебе сделает что-то типа следующего:
(для того, чтобы понимать, как это работает; на самом деле, там не совсем так, как я написал)
Во-вторых, можно было бы стразу сделать множество (set), а не список (list), (но да, у него чуть другие методы, чтобы не путать со списком):
Правдивость списков / Truthiness of List
HasseDiagram/mainWindow.py
Line 130 in 516bd62
https://stackoverflow.com/questions/39983695/what-is-truthy-and-falsy-how-is-it-different-from-true-and-false
Пустые коллекции сразу возвращают
False
:Unpacking
HasseDiagram/mainWindow.py
Line 118 in 516bd62
https://stackabuse.com/unpacking-in-python-beyond-parallel-assignment/
можно
The text was updated successfully, but these errors were encountered: