Python Academy
Сегодня у нас необычный тест для тру айтишников. Скажите нам, что вы видите на картинке, и узнайте, кто вы из разрабов. Если вы видите художника, затерявшегося в густой толпе и оставившего лишь несколько подсказок о своем местонахождении, то поздравляем…
💻 Рассказывали вам про задачи на Yandex Cup 2023. В финале команда Яндекса также решила совместить IT и искусство. Пространство было оформлено в стиле демосцены — субкультуры, связанной с компьютерным искусством и киберкультурой, и сами задачи также были тематическими.
Один из запоминающихся арт-объектов соревнования: музыкальный перформанс “Код степи”, созданный участниками лейбла qazaq indie — Балхаш снится, Samrattama, — и другими независимыми художниками, где объединились элементы казахстанской культуры и технологий. Код, который писали участники, был синтезирован в звук и стал частью музыкального произведения.
Получилось очень атмосферно. Было ощущение, что смотришь не трансляцию соревнования, а стрим из киберпанк-будущего. Кстати, в процессе решения задач, участники могли послушать доклады от финалистов ML-трека. Советую посмотреть эту часть, если любите участвовать в IT-соревнованиях, тут над организацией прямо заморочились.
Один из запоминающихся арт-объектов соревнования: музыкальный перформанс “Код степи”, созданный участниками лейбла qazaq indie — Балхаш снится, Samrattama, — и другими независимыми художниками, где объединились элементы казахстанской культуры и технологий. Код, который писали участники, был синтезирован в звук и стал частью музыкального произведения.
Получилось очень атмосферно. Было ощущение, что смотришь не трансляцию соревнования, а стрим из киберпанк-будущего. Кстати, в процессе решения задач, участники могли послушать доклады от финалистов ML-трека. Советую посмотреть эту часть, если любите участвовать в IT-соревнованиях, тут над организацией прямо заморочились.
Валидаторы данных
Как правило, разработчики пишут регулярные выражения для обработки специфических строк. Но для таких данных как, почта или ссылка, изобретать велосипед не нужно.
Модуль
Помимо этого,
#python #validators
Как правило, разработчики пишут регулярные выражения для обработки специфических строк. Но для таких данных как, почта или ссылка, изобретать велосипед не нужно.
Модуль
validators
позволяет использовать уже готовые валидаторы для самых распространенных задач. В примере можете как раз увидеть валидацию почты и ссылок.Помимо этого,
validators
позволяет также работать с ipv4
, ipv6
, mac
адресами и многим другим. В итоге, имеем лаконичный и простой модуль с хорошим функционалом.#python #validators
🐍 На работу python разработчиком сложно попасть без резюме.
📸 А в качественном резюме должна быть представительная фотография! Вот вам бот, который делает магию, превращая любую вашу фотографию в качественное фото для резюме.
🤖 @avatar_resume_bot
📸 А в качественном резюме должна быть представительная фотография! Вот вам бот, который делает магию, превращая любую вашу фотографию в качественное фото для резюме.
🤖 @avatar_resume_bot
Паттерн проектирования Singleton
Одиночка или же синглтон – это паттерн проектирования, описывающий объект, у которого имеется один единственный экземпляр.
Метод
В примере мы проверяем, есть ли значение у атрибута
То есть при вызове конструктора класса
#классы #паттерны
Одиночка или же синглтон – это паттерн проектирования, описывающий объект, у которого имеется один единственный экземпляр.
Метод
__new__
вызывается для создания экземпляра класса, перед вызовом __init__
. На вход первым аргументом метод принимает сам класс, а возвращать должен уже экземпляр (даже можно экземпляр и другого класса).В примере мы проверяем, есть ли значение у атрибута
instance
. Если нет, то присваиваем атрибуту экземпляр этого же класса. А если уже экземпляр создан, то просто его возвращаем.То есть при вызове конструктора класса
Singleton
, будет возвращаться один и тот же объект из памяти.#классы #паттерны
Приглашаем на Pytup — круглый стол о Python 3.12
Пока все постепенно начинают думать о Новом годе, мы готовим для вас новый Pytup, чтобы поговорить про наш любимый язык программирования. Тема этого круглого стола — Python 3.12 в проде.
На Pytup мы соберём разработчиков, которым есть что сказать про Python 3.12 и которые могут поделиться первыми впечатлениями от новой версии. Стоит ли переходить на 3.12, что в новой версии реализовано плохо, а что — хорошо и вообще в ту ли сторону развивается язык. Обсудим эти и другие вопросы, вместе поразмышляем над перспективами Python, а ещё поболтаем о жизни, отдохнём и просто хорошо проведём время.
Pytup пройдёт 16 декабря в Москве, можно прийти офлайн или посмотреть онлайн-трансляцию.
Зарегистрироваться можно здесь.
Пока все постепенно начинают думать о Новом годе, мы готовим для вас новый Pytup, чтобы поговорить про наш любимый язык программирования. Тема этого круглого стола — Python 3.12 в проде.
На Pytup мы соберём разработчиков, которым есть что сказать про Python 3.12 и которые могут поделиться первыми впечатлениями от новой версии. Стоит ли переходить на 3.12, что в новой версии реализовано плохо, а что — хорошо и вообще в ту ли сторону развивается язык. Обсудим эти и другие вопросы, вместе поразмышляем над перспективами Python, а ещё поболтаем о жизни, отдохнём и просто хорошо проведём время.
Pytup пройдёт 16 декабря в Москве, можно прийти офлайн или посмотреть онлайн-трансляцию.
Зарегистрироваться можно здесь.
Работа с PDF файлами используя PyPDF2
В этом посте, вы узнаете, как работать с PDF-файлами в Python.
Пример кода:
В этом примере мы открываем PDF-файл, используя PyPDF2, извлекаем информацию о количестве страниц и тексте с первой страницы. Затем мы создаем новый PDF-файл, добавляем в него первую страницу и сохраняем его под именем "new_document.pdf".
PyPDF2 - это мощный инструмент для работы с PDF-документами в Python. Он предоставляет возможности для чтения, создания и манипулирования PDF-файлами, что делает его отличным выбором для автоматизации задач, связанных с обработкой документов в этом формате.
#python #pypdf2
В этом посте, вы узнаете, как работать с PDF-файлами в Python.
PyPDF2
предоставляет функциональность для работы с PDF-файлами в Python
, позволяя автоматизировать процессы обработки и анализа документов в формате PDF.Пример кода:
import PyPDF2
with open('example.pdf', 'rb') as file:
pdf_reader = PyPDF2.PdfReader(file)
num_pages = len(pdf_reader.pages)
print(f"Количество страниц в PDF: {num_pages}")
first_page_text = pdf_reader.pages[0].extract_text()
print("Текст с первой страницы:")
print(first_page_text)
pdf_writer = PyPDF2.PdfWriter()
pdf_writer.add_page(pdf_reader.pages[0])
with open('new_document.pdf', 'wb') as new_file:
pdf_writer.write(new_file)
print("Обработка PDF завершена.")
В этом примере мы открываем PDF-файл, используя PyPDF2, извлекаем информацию о количестве страниц и тексте с первой страницы. Затем мы создаем новый PDF-файл, добавляем в него первую страницу и сохраняем его под именем "new_document.pdf".
PyPDF2 - это мощный инструмент для работы с PDF-документами в Python. Он предоставляет возможности для чтения, создания и манипулирования PDF-файлами, что делает его отличным выбором для автоматизации задач, связанных с обработкой документов в этом формате.
#python #pypdf2
Хеширование в Python используя hashlib
Библиотека
Пример кода:
Библиотека
#python #hashlib
Библиотека
hashlib
предоставляет алгоритмы хеширования, которые позволяют создавать уникальные хеш-суммы для данных. Это полезно для проверки целостности файлов, хранения паролей в безопасной форме и других задач безопасности данных.Пример кода:
import hashlibВ этом примере мы используем алгоритм
# Пример хеширования строки с использованием SHA-256
data_to_hash = "Hello, World!"
hashed_data = hashlib.sha256(data_to_hash.encode()).hexdigest()
print(f"Исходные данные: {data_to_hash}")
print(f"Хеш-сумма (SHA-256): {hashed_data}")
SHA-256
из библиотеки hashlib
для создания хеш-суммы строки "Hello, World!". Результат выводится в шестнадцатеричном формате.Библиотека
hashlib
является одним из лучших инструментов для обеспечения безопасности данных в Python
. Путем использования различных алгоритмов хеширования, таких как MD5
, SHA-256
и других, вы можете обеспечить целостность данных и повысить уровень безопасности ваших приложений.#python #hashlib
🌐 Копирование веб-содержимого в Python с библиотекой pywebcopy
Библиотека
Пример кода:
В данном примере используется функция
Библиотека💻
#python #pywebcopy
Библиотека
pywebcopy
облегчает автоматизацию процесса загрузки веб-содержимого, что может быть полезным при создании веб-скраперов, загрузчиков или других приложений, требующих копирования данных из Интернета.Пример кода:
from pywebcopy import save_webpage
url = 'https://www.example.com'
target_folder = 'path/to/folder'
save_webpage(url, target_folder)
В данном примере используется функция
save_webpage
для копирования веб-содержимого указанной веб-страницы (url) в указанную целевую папку (target_folder).Библиотека
pywebcopy
предоставляет простой и удобный способ копирования веб-содержимого прямо из Python
. Она может быть полезна при создании скриптов для загрузки данных с веб-страниц, автоматизации сбора информации или создании зеркал сайтов. #python #pywebcopy
Please open Telegram to view this post
VIEW IN TELEGRAM
Работа с YAML-Файлами в Python с Помощью Библиотеки PyYAML
Результат (файл
В этом примере мы используем
Библиотека🐍
#python #yaml #pyyaml
PyYAML
позволяет эффективно работать с файлами в формате YAML (YAML Ain't Markup Language)
, который широко используется для конфигураций, настроек и обмена данными в структурированной форме.import yaml
data_to_write = {'name': 'John Doe', 'age': 30, 'city': 'Example City'}
with open('example.yaml', 'w') as file:
yaml.dump(data_to_write, file, default_flow_style=False)
with open('example.yaml', 'r') as file:
loaded_data = yaml.safe_load(file)
print(f"Загруженные данные: {loaded_data}")
Результат (файл
example.yaml
):age: 30
city: Example City
name: John Doe
В этом примере мы используем
PyYAML
для записи словаря data_to_write
в файл example.yaml
и затем загружаем данные из этого файла обратно в переменную loaded_data
.Библиотека
PyYAML
предоставляет удобные средства для работы с данными в формате YAML
в Python
. Будь то сохранение конфигураций, обмен структурированными данными или другие сценарии, где YAML
имеет преимущество, PyYAML
обеспечивает легкость в использовании и читаемый код#python #yaml #pyyaml
Please open Telegram to view this post
VIEW IN TELEGRAM
Все сервисы Норникеля для работников, собранные в суперапе «Суперника» — нашли отклик в сердцах работников, ведь приложение уже используют 40 тысяч человек из 22 городов России.
Приложение оказалось крайне полезным, потому что у 75% сотрудников нет ПК на рабочем месте. Суперап доступен на любом мобильном устройстве, а также в десктоп-версии с любого компьютера. В личном кабинете можно узнать информацию об отпуске, стаже работы. Есть возможность настроить новостную ленту, получить доступ к документам и справкам, узнать о корпоративных мероприятиях и оставить отклик. Также можно общаться между собой в чатах на звонках и видеосвязи.
В основе «Суперники» микросервисная архитектура. Для быстрой и бесшовной работы приложения потребовалось разработать, согласовать, прописать и настроить 3500 правил. Все сервисы работают независимо друг от друга, а это более тысячи различных соединений.
Приложение оказалось крайне полезным, потому что у 75% сотрудников нет ПК на рабочем месте. Суперап доступен на любом мобильном устройстве, а также в десктоп-версии с любого компьютера. В личном кабинете можно узнать информацию об отпуске, стаже работы. Есть возможность настроить новостную ленту, получить доступ к документам и справкам, узнать о корпоративных мероприятиях и оставить отклик. Также можно общаться между собой в чатах на звонках и видеосвязи.
В основе «Суперники» микросервисная архитектура. Для быстрой и бесшовной работы приложения потребовалось разработать, согласовать, прописать и настроить 3500 правил. Все сервисы работают независимо друг от друга, а это более тысячи различных соединений.
Создание скриншотов с использованием модуля pyscreenshot
Модуль
Для захвата изображения используется метод
Этот модуль оказывается особенно полезным, например, при логировании скриптов, использующих
#python #pyscreenshot
Модуль
pyscreenshot
, обеспечивая кросс-платформенную функциональность, позволяет легко создавать скриншоты как всего экрана, так и его отдельных частей. Для работы этого модуля необходимо установить библиотеку Pillow
.Для захвата изображения используется метод
grab
, для его отображения – show
, а для сохранения – save
. В метод grab
можно также передать аргумент bbox
, чтобы ограничить захват только определенной областью экрана.Этот модуль оказывается особенно полезным, например, при логировании скриптов, использующих
Selenium
. Selenium
может открывать браузер и выполнять различные операции в нем, и использование pyscreenshot
позволяет создавать скриншоты для последующего анализа и отладки.#python #pyscreenshot