import * #tpyИногда при решении задач ЕГЭ (например 8 номера) учащиеся подключают модули с помощью записи:
from itertools import *
⚠️ Однако это может привести к конфликту имён и ошибкам в программе!
count = 0
from itertools import *
for p in permutations('abc'):
count += 1
print(count, p)
TypeError: unsupported operand type(s) for +=: 'type' and 'int'
⚙️ Причина в том, что в модуле itertools уже существует объект с именем count, и при импорте через * он перезаписывает нашу переменную count.
В итоге переменная становится функцией, и операция += 1 вызывает ошибку.
count = 0
from itertools import permutations
for p in permutations('abc'):
count += 1
print(count, p)
1 ('a', 'b', 'c')
2 ('a', 'c', 'b')
3 ('b', 'a', 'c')
4 ('b', 'c', 'a')
5 ('c', 'a', 'b')
6 ('c', 'b', 'a')🙂 теперь конфликт имен не возникает, так как мы импортировали, только то, что нам нужно, и count - это все так же наша переменная.
Напоминаю, что ещё больше полезного контента по образованию и саморазвитию вы найдёте на каналах моих коллег, которые я собрал для вас в одну папку
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥2❤🔥1