Что выведет код?
Anonymous Quiz
51%
{'a': [1], 'b': [], 'c': []}
24%
{'a': [1], 'b': [1], 'c': [1]}
7%
{'a': 1, 'b': 1, 'c': 1}
18%
Error
👍2🤡1
Почему это важно
Это классическая ловушка при инициализации словарей со значениями-списками; правильный способ — использовать dict comprehension: {𝚔: [] 𝚏𝚘𝚛 𝚔 𝚒𝚗 𝚔𝚎𝚢𝚜} или 𝚍𝚎𝚏𝚊𝚞𝚕𝚝𝚍𝚒𝚌𝚝(𝚕𝚒𝚜𝚝).
Please open Telegram to view this post
VIEW IN TELEGRAM
✍1
👏5
Почему это важно
Многие разработчики интуитивно считают, что 𝚜𝚙𝚕𝚒𝚝(' ') и 𝚜𝚙𝚕𝚒𝚝() — это одно и то же, но на практике разница критична при парсинге данных: логи, CSV-файлы или пользовательский ввод часто содержат лишние пробелы в начале/конце строк или двойные пробелы между словами. Если использовать 𝚜𝚙𝚕𝚒𝚝(' ') для такой строки, в результате появятся пустые элементы '', которые могут сломать дальнейшую обработку — например, 𝚒𝚗𝚝('') выбросит ошибку, а 𝚕𝚎𝚗(𝚛𝚎𝚜𝚞𝚕𝚝) покажет неверное количество «слов». Правило простое: если нужно разбить текст на слова — используй 𝚜𝚙𝚕𝚒𝚝() без аргументов; если нужно точное разбиение по конкретному символу с сохранением структуры — тогда 𝚜𝚙𝚕𝚒𝚝(' ').
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
🔥2
Почему это важно
Если бы разработчик хотел присвоить 𝚢 значение 𝚡, а потом проверить 𝚢 𝚘𝚛 𝚃𝚛𝚞𝚎, нужны скобки: (𝚢 := 𝚡) 𝚘𝚛 𝚃𝚛𝚞𝚎. Без понимания приоритета легко получить неожиданный результат.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2