Что за зверь такой — Последовательная типизация?
Всем нам в первые пару лет, как правило, доносят про:
Природа любит заполнять «дыры» между такими антонимами, поэтому Python умеет и в т.н. Последовательную типизацию — систему типов, в которой некоторым переменным могут быть заранее заданы строгие типы:
Этот ненавязчивый гибрид сочетает достоинства динамической и статической типизаций:
— Улучшает качества кода — аннотации типов позволяют инструментам вроде mypy находить ошибки до запуска программы;
— Облегчает сопровождения больших проектов — типы помогают лучше понять интерфейсы функций и классов;
— Помогает с плавным переходом: можно добавлять типы поэтапно, не переписывая весь код сразу.
#основы
@zen_of_python
Всем нам в первые пару лет, как правило, доносят про:
Динамическую типизацию — способ работы с типами данных, при котором тип переменной определяется во время выполнения программы, а не заранее (как при статической типизации).
Природа любит заполнять «дыры» между такими антонимами, поэтому Python умеет и в т.н. Последовательную типизацию — систему типов, в которой некоторым переменным могут быть заранее заданы строгие типы:
def greet(name: str, greeting) -> str:
return greeting + ", " + name
name: str = "Alice"
print(greet(name, "Hello"))
Этот ненавязчивый гибрид сочетает достоинства динамической и статической типизаций:
— Улучшает качества кода — аннотации типов позволяют инструментам вроде mypy находить ошибки до запуска программы;
— Облегчает сопровождения больших проектов — типы помогают лучше понять интерфейсы функций и классов;
— Помогает с плавным переходом: можно добавлять типы поэтапно, не переписывая весь код сразу.
#основы
@zen_of_python
❤🔥7❤1
Forwarded from IT Юмор
Такая мотивировка отказа в 2025 году, конечно, больше мем и байка 💀
В реальности всё, наверное, по другому. И мы хотим разобраться КАК. Помогите нам пролить свет на рекрутинг в IT с точки зрения н-а-с-т-о-я-щ-и-х разработчиков-соискателей.
@ithumor
В реальности всё, наверное, по другому. И мы хотим разобраться КАК. Помогите нам пролить свет на рекрутинг в IT с точки зрения н-а-с-т-о-я-щ-и-х разработчиков-соискателей.
@ithumor
Please open Telegram to view this post
VIEW IN TELEGRAM
😁2🥱1
Вопросы подписчиков
Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:
— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;
#вопросы_новичков
@zen_of_python
Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:
— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте;
#вопросы_новичков
@zen_of_python
🔥1
Fun Fact: своей популярностью Python во многом обязан Google. Компания настолько вдохновилась перспективами ЯП, что наняла для развития проекта целого Гвидо ван Россума (создателя).
#факт
@zen_of_python
#факт
@zen_of_python
😁6🌭1
Если бы расам Elder Scrolls соответствовала специализация в Python
🦄 — Если тоже решил снова поиграть в Oblivion
#кек
@zen_of_python
🦄 — Если тоже решил снова поиграть в Oblivion
#кек
@zen_of_python
🔥6👍4
RedBaron | Прокачивай код Like a Pro
Мощная библиотека для анализа и модификации исходного кода с сохранением форматирования. Предоставляет удобный интерфейс для работы с синтаксическим деревом кода, сохраняя пробелы, отступы и комментарии. Идеально подходит для рефакторинга, автогенерации кода и статического анализа.
p.s. Red Baron («Красный барон») — вид питонов, чешуя кирпично-красного цвета.
Репозиторий проекта
#библиотека
@zen_of_python
Мощная библиотека для анализа и модификации исходного кода с сохранением форматирования. Предоставляет удобный интерфейс для работы с синтаксическим деревом кода, сохраняя пробелы, отступы и комментарии. Идеально подходит для рефакторинга, автогенерации кода и статического анализа.
p.s. Red Baron («Красный барон») — вид питонов, чешуя кирпично-красного цвета.
Репозиторий проекта
#библиотека
@zen_of_python
❤1🐳1🍌1
Из гайда по безопасности Django
Фреймворк известен своей философией «батарейки в комплекте». Однако даже с его встроенными средствами защиты, безопасность приложения во многом зависит от разработчика.
Современные веб-приложения сталкиваются с множеством угроз. Хотя Django предоставляет встроенные механизмы защиты от многих из них, полезно ознакомиться с основными InfoSec-практиками.
Обновление Django и зависимостей
Регулярно «освежайте» версию фреймворка и сторонних библиотек, они нередко содержат хотфиксы в контексте безопасности.
Передача данных по HTTPS
Обязательно настраивайте свой веб-сервер, будь то nginx или что другое, на HTTPS. SSL-сертификат можно получить бесплатно на letsencrypt.com. Библиотека certbot даже позволяет настроить автопродление серта.
Ограничение доступа к базе данных
Хотя Django ORM защищает от SQL-инъекций, дополнительные меры не повредят:
— Ограничьте права пользователя БД до необходимого минимума;
— Регулярно создавайте резервные копии и шифруйте данные;
— Используйте ORM Django.
Если необходимо использовать сырой SQL, спасет параметризация. В примере ниже драйвер БД экранирует значение username:
Встроенные средства безопасности
Создатели проекта предоставляет множество встроенных механизмов безопасности:
— Добавьте
— Настройте заголовки безопасности, такие как
Аутентификация
— Реализуйте многофакторную аутентификацию с помощью пакетов, таких как django-otp;
— Применяйте ролевую модель доступа для управления правами пользователей.
Полезные библиотеки | Misc
Ниже представлена слегка эклектичная, но полезная подборка тулов, прямо или косвенно повышающих безопасность вашего сайта:
— django-ratelimit ограничит частоту запросов;
— django-guardian управляет объектно-ориентированными разрешениями;
— SonarQube / semgrep.dev: автотестирует ваш проект на предмет эксплойтов (DevSecOps).
#безопасность #основы
@zen_of_python
Фреймворк известен своей философией «батарейки в комплекте». Однако даже с его встроенными средствами защиты, безопасность приложения во многом зависит от разработчика.
Современные веб-приложения сталкиваются с множеством угроз. Хотя Django предоставляет встроенные механизмы защиты от многих из них, полезно ознакомиться с основными InfoSec-практиками.
Обновление Django и зависимостей
Регулярно «освежайте» версию фреймворка и сторонних библиотек, они нередко содержат хотфиксы в контексте безопасности.
Передача данных по HTTPS
Обязательно настраивайте свой веб-сервер, будь то nginx или что другое, на HTTPS. SSL-сертификат можно получить бесплатно на letsencrypt.com. Библиотека certbot даже позволяет настроить автопродление серта.
Ограничение доступа к базе данных
Хотя Django ORM защищает от SQL-инъекций, дополнительные меры не повредят:
— Ограничьте права пользователя БД до необходимого минимума;
— Регулярно создавайте резервные копии и шифруйте данные;
— Используйте ORM Django.
Если необходимо использовать сырой SQL, спасет параметризация. В примере ниже драйвер БД экранирует значение username:
from django.db import connection
with connection.cursor() as cursor:
cursor.execute("SELECT * FROM auth_user WHERE username = %s", [username])
Встроенные средства безопасности
Создатели проекта предоставляет множество встроенных механизмов безопасности:
— Добавьте
django.middleware.security.SecurityMiddleware
в список MIDDLEWARE
;— Настройте заголовки безопасности, такие как
Content-Security-Policy, X-Content-Type-Options, X-Frame-Options
.Аутентификация
— Реализуйте многофакторную аутентификацию с помощью пакетов, таких как django-otp;
— Применяйте ролевую модель доступа для управления правами пользователей.
Полезные библиотеки | Misc
Ниже представлена слегка эклектичная, но полезная подборка тулов, прямо или косвенно повышающих безопасность вашего сайта:
— django-ratelimit ограничит частоту запросов;
— django-guardian управляет объектно-ориентированными разрешениями;
— SonarQube / semgrep.dev: автотестирует ваш проект на предмет эксплойтов (DevSecOps).
#безопасность #основы
@zen_of_python
👍2🎃1
Forwarded from IT Юмор
Минцифры запускает платформу для подтверждения ИТ-навыков 😱
Пройти тесты уже можно по 5 языкам программирования и 12 теоретическим темам. Это бесплатно и не требует диплома.
Успешные участники получают сертификат, видимый в резюме и на Госуслугах🕺
Будете проходить такую сертификацию?
👍 — да
👎 — нет
@ithumor
Пройти тесты уже можно по 5 языкам программирования и 12 теоретическим темам. Это бесплатно и не требует диплома.
Успешные участники получают сертификат, видимый в резюме и на Госуслугах
Будете проходить такую сертификацию?
👍 — да
👎 — нет
@ithumor
Please open Telegram to view this post
VIEW IN TELEGRAM
👎27😁9👍4❤1
Pandas 3.0 переходит с NumPy на PyArrow
Такой переход обеспечит значительный прирост скорости, особенно при фильтрации, группировке и чтении данных. Также снижается потребление памяти и появляется лучшая поддержка отсутствующих значений. Благодаря формату Arrow, Pandas становится более совместимым с другими современными инструментами аналитики. При этом существующий код на Pandas останется работоспособным без изменений.
Все больше статей в сообществе про альтернативы pandas, выигрывающие в скорости, но не тут-то было!
#факт
@zen_of_python
Такой переход обеспечит значительный прирост скорости, особенно при фильтрации, группировке и чтении данных. Также снижается потребление памяти и появляется лучшая поддержка отсутствующих значений. Благодаря формату Arrow, Pandas становится более совместимым с другими современными инструментами аналитики. При этом существующий код на Pandas останется работоспособным без изменений.
Все больше статей в сообществе про альтернативы pandas, выигрывающие в скорости, но не тут-то было!
#факт
@zen_of_python
✍3❤1
Нобелевки, где помог Python
Python играет ключевую роль в науке. Это инструмент анализа данных, моделирования и визуализации. Вашему вниманию самые нашумевшие проекты с участием этого ЯП, получившие Нобелевские премии.
Обратное распространение ошибки (Backpropagation) и глубокое обучение
Наука: Физика
Когда: 2024
Библиотеки TensorFlow и PyTorch стали основными инструментами для реализации алгоритма обратного распространения ошибки в нейронных сетях.
CRISPR/Cas9 — редактирование генома
Наука: химия
Когда: 2020
Библиотека Biopython используется для анализа геномных данных и моделирования последовательностей ДНК.
Гравитационные волны (LIGO)
Наука: физика
Когда: 2017
Библиотека GWpy используется для анализа данных, полученных от детекторов гравитационных волн — это рябь в пространстве-времени, возникающая при очень мощных космических событиях, например, столкновении черных дыр.
Нейропластичность и функциональная МРТ
Наука: физиология
Когда: 2014
Библиотека MNE-Python используется для анализа нейрофизиологических данных, таких как ЭЭГ (электроэнцефалография мозга).
Анализ климата и моделирование глобального потепления
Наука: физика
Когда: 2021
Библиотека Xarray помогает анализировать многомерные климатические данные и моделировать климатические изменения.
Экзопланеты — открытие планет за пределами Солнечной системы
Наука: физика
Когда: 2019
Библиотека Lightkurve используется для анализа световых кривых звезд и обнаружения экзопланет.
Некоторые проекты все же остались лишь номинантами, но их тоже стоит упомянуть, ибо лучшего способа зарядиться изучать программирование, пожалуй, нет.
Телескоп Джеймса Уэбба (JWST) и инфракрасная астрономия
Инструмент Astropy используется для обработки и анализа данных, полученных от JWST. Это помогает определить химический состав объектов, проследить их траектории во времени.
Подробнее
#факт
@zen_of_python
Python играет ключевую роль в науке. Это инструмент анализа данных, моделирования и визуализации. Вашему вниманию самые нашумевшие проекты с участием этого ЯП, получившие Нобелевские премии.
Обратное распространение ошибки (Backpropagation) и глубокое обучение
Наука: Физика
Когда: 2024
Библиотеки TensorFlow и PyTorch стали основными инструментами для реализации алгоритма обратного распространения ошибки в нейронных сетях.
CRISPR/Cas9 — редактирование генома
Наука: химия
Когда: 2020
Библиотека Biopython используется для анализа геномных данных и моделирования последовательностей ДНК.
Гравитационные волны (LIGO)
Наука: физика
Когда: 2017
Библиотека GWpy используется для анализа данных, полученных от детекторов гравитационных волн — это рябь в пространстве-времени, возникающая при очень мощных космических событиях, например, столкновении черных дыр.
Нейропластичность и функциональная МРТ
Наука: физиология
Когда: 2014
Библиотека MNE-Python используется для анализа нейрофизиологических данных, таких как ЭЭГ (электроэнцефалография мозга).
Анализ климата и моделирование глобального потепления
Наука: физика
Когда: 2021
Библиотека Xarray помогает анализировать многомерные климатические данные и моделировать климатические изменения.
Экзопланеты — открытие планет за пределами Солнечной системы
Наука: физика
Когда: 2019
Библиотека Lightkurve используется для анализа световых кривых звезд и обнаружения экзопланет.
Некоторые проекты все же остались лишь номинантами, но их тоже стоит упомянуть, ибо лучшего способа зарядиться изучать программирование, пожалуй, нет.
Телескоп Джеймса Уэбба (JWST) и инфракрасная астрономия
Инструмент Astropy используется для обработки и анализа данных, полученных от JWST. Это помогает определить химический состав объектов, проследить их траектории во времени.
Подробнее
#факт
@zen_of_python
Analytics Vidhya
The 2024 Nobel Prizes: AI is Taking Over Everything
Find out how AI is reshaping the future of science with the Nobel Prizes in Physics and Chemistry. Nobel prize winners and their work in 2024.
🔥9❤6