Как можно создать текстовый файл Unicode в формате специфической кодировки?
Anonymous Quiz
73%
Передать имя кодировки в open() с параметром encoding
10%
Использовать json с ensure_ascii=False
14%
Применить str.encode() и записать байты в двоичном режиме
4%
Использовать pickle с протоколом 3
❤2👍1👎1
«При работе с JSON-файлами в текстовом формате используйте encoding="utf-8" при открытии файла для чтения и записи».
𝚏 = 𝚘𝚙𝚎𝚗('𝚠𝚘𝚛𝚔𝚏𝚒𝚕𝚎', '𝚠', 𝚎𝚗𝚌𝚘𝚍𝚒𝚗𝚐="𝚞𝚝𝚏-𝟾")
Почему вариант 1 — правильный
Другие варианты (например, str.encode() с записью байтов, использование JSON или pickle) не являются подходящими для создания текстового файла в нужной кодировке — они либо статичны, либо служат для других целей.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
❤2👍1👎1
Зацените как похорошели транскрибации при Войси!
Вайб-кодинг вайб-кодингом, но как же не хватает простого человеческого «расшифруй мне созвон, только качественно!!». С этим вам поможет Войси.
🤯Этот ИИ-агент может с легкостью сделать из созвона текст, подвести итоги встречи и составить саммари. Войси переводит с 54 языков на русский без всяких артефактов и составляет текст в аккуратные абзацы с выделенными тезисами.
Самое удобное, что далеко ходить не надо — всё это делается прямо в «телеге». Экономьте своё время, превращая часы в минуты.
🔥А новичкам доступны 1,5 часа бесплатной транскрибации. Забирайте: https://tprg.ru/9xQo
Вайб-кодинг вайб-кодингом, но как же не хватает простого человеческого «расшифруй мне созвон, только качественно!!». С этим вам поможет Войси.
🤯Этот ИИ-агент может с легкостью сделать из созвона текст, подвести итоги встречи и составить саммари. Войси переводит с 54 языков на русский без всяких артефактов и составляет текст в аккуратные абзацы с выделенными тезисами.
Самое удобное, что далеко ходить не надо — всё это делается прямо в «телеге». Экономьте своё время, превращая часы в минуты.
🔥А новичкам доступны 1,5 часа бесплатной транскрибации. Забирайте: https://tprg.ru/9xQo
👍1
👍2👎1
«Оператор 𝚍𝚎𝚕 используется для удаления элементов из списков, переменных и атрибутов объектов».
В данном случае:
Важно понимать, что метод __𝚍𝚎𝚕𝚊𝚝𝚝𝚛__ получает именно то имя атрибута, которое было указано в операторе 𝚍𝚎𝚕, а не внутреннее имя _𝚗𝚊𝚖𝚎. Это позволяет создавать "виртуальные" атрибуты, которые на самом деле управляют другими внутренними атрибутами объекта.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
Чем между собой отличаются свойства и дескрипторы
Anonymous Quiz
44%
Свойства создаются встроенной функцией, дескрипторы — классом с собственным состоянием
13%
Дескрипторы предоставляют больше возможностей настройки
30%
Дескрипторы — способ создания свойств без собственного состояния
13%
Свойства и дескрипторы — одно и то же, разница только в синтаксисе
🙈3👍1👎1
👍1👎1
👍1👎1
«Декораторы функций представляют собой синтаксический сахар, который обеспечивает запуск одной функции через другую в конце оператора 𝚍𝚎𝚏 и повторно привязывает имя исходной функции к результату».
«Автоматическая повторная привязка имен объясняет синтаксис декорирования статических методов и свойств:
𝚌𝚕𝚊𝚜𝚜 С:
@𝚜𝚝𝚊𝚝𝚒𝚌𝚖𝚎𝚝𝚑𝚘𝚍
𝚍𝚎𝚏 𝚖𝚎𝚝𝚑 (...): ... # 𝚖𝚎𝚝𝚑 = 𝚜𝚝𝚊𝚝𝚒𝚌𝚖𝚎𝚝𝚑𝚘𝚍 (𝚖𝚎𝚝𝚑)
В обоих случаях имя метода повторно привязывается к результату встроенного декоратора в конце оператора 𝚍𝚎𝚏».
👍1👎1
«Так определяется и применяется декоратор функции, который подсчитывает количество вызовов декорированной функции и для каждого вызова выводит трассировочное сообщение».
Ключевые моменты работы декоратора:
Как отмечается в учебнике: «При последующих вызовах: запуск исходной функции»
Последовательность выполнения:
«Обратите внимание, что общее количество вызовов отображается как атрибут декорированной функции».
Важно отметить, что в отличие от оригинального примера из учебника, в данной задаче функция 𝚜𝚙𝚊𝚖 возвращает результат (𝚛𝚎𝚝𝚞𝚛𝚗 𝚊 + 𝚋 + 𝚌), поэтому декоратор также должен возвращать результат вызова исходной функции.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1👎1
👍1👎1
Это демонстрирует разницу между использованием глобальных переменных и атрибутов экземпляров классов в декораторах. Глобальная переменная создает общий счетчик для всех декорированных функций, а не отдельный счетчик для каждой функции.
Глобальная переменная 𝚌𝚊𝚕𝚕𝚜 является общей для всех декорированных функций, поэтому счетчик инкрементируется при каждом вызове любой из декорированных функций.
Последовательность выполнения:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1👎1
👍1👎1