python-cheat-sheet.pdf
89.3 KB
✍️🐍 Шпаргалка по Python 3 от Real Python
Внутри:
- типы данных (строки, числа, булевы типы);
- коллекции (списки, словари);
- условные выражения и циклы;
- функции.
🔗 Ссылка
@python_job_interview
Внутри:
- типы данных (строки, числа, булевы типы);
- коллекции (списки, словари);
- условные выражения и циклы;
- функции.
🔗 Ссылка
@python_job_interview
Шпаргалка по REST API.pdf
435.4 KB
— как называются части URL в контексте запроса;
— зачем нужны те или иные заголовки запросов (например, Accept-Charset / User-Agent);
— чем отличается код 300 от 500
#api #шпаргалка
@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️Легкий способ получать свежие обновления и следить за трендами в разработке на вашем языке. Находите свой стек и подписывайтесь:
МАШИННОЕ ОБУЧЕНИЕ: t.iss.one/ai_machinelearning_big_data
C++ t.iss.one/cpluspluc
Python: t.iss.one/pro_python_code
Хакинг: t.iss.one/linuxkalii
Devops: t.iss.one/devOPSitsec
АНАЛИЗ Данных: t.iss.one/data_analysis_ml
Javascript: t.iss.one/javascriptv
C#: t.iss.one/csharp_ci
Java: t.iss.one/javatg
Базы данных: t.iss.one/sqlhub
Linux: t.iss.one/linuxacademiya
Python собеседования: t.iss.one/pythonl
Мобильная разработка: t.iss.one/mobdevelop
Docker: t.iss.one/DevopsDocker
Golang: t.iss.one/Golang_google
React: t.iss.one/react_tg
Rust: t.iss.one/rust_code
PHP: t.iss.one/phpshka
Android: t.iss.one/android_its
Frontend: t.iss.one/front
Big Data: t.iss.one/bigdatai
Собеседования МЛ: t.iss.one/machinelearning_interview
МАТЕМАТИКА: t.iss.one/data_math
C++ собеседования: t.iss.one/cppsobes
Kubernets: t.iss.one/kubernetc
💼 Папка с вакансиями: t.iss.one/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.iss.one/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.iss.one/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.iss.one/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://t.iss.one/addlist/mzMMG3RPZhY2M2Iy
😆ИТ-Мемы: t.iss.one/memes_prog
🇬🇧Английский: t.iss.one/english_forprogrammers
🧠ИИ: t.iss.one/vistehno
📕Ит-книги бесплатно: https://t.iss.one/addlist/BkskQciUW_FhNjEy
МАШИННОЕ ОБУЧЕНИЕ: t.iss.one/ai_machinelearning_big_data
C++ t.iss.one/cpluspluc
Python: t.iss.one/pro_python_code
Хакинг: t.iss.one/linuxkalii
Devops: t.iss.one/devOPSitsec
АНАЛИЗ Данных: t.iss.one/data_analysis_ml
Javascript: t.iss.one/javascriptv
C#: t.iss.one/csharp_ci
Java: t.iss.one/javatg
Базы данных: t.iss.one/sqlhub
Linux: t.iss.one/linuxacademiya
Python собеседования: t.iss.one/pythonl
Мобильная разработка: t.iss.one/mobdevelop
Docker: t.iss.one/DevopsDocker
Golang: t.iss.one/Golang_google
React: t.iss.one/react_tg
Rust: t.iss.one/rust_code
PHP: t.iss.one/phpshka
Android: t.iss.one/android_its
Frontend: t.iss.one/front
Big Data: t.iss.one/bigdatai
Собеседования МЛ: t.iss.one/machinelearning_interview
МАТЕМАТИКА: t.iss.one/data_math
C++ собеседования: t.iss.one/cppsobes
Kubernets: t.iss.one/kubernetc
💼 Папка с вакансиями: t.iss.one/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.iss.one/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.iss.one/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.iss.one/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://t.iss.one/addlist/mzMMG3RPZhY2M2Iy
😆ИТ-Мемы: t.iss.one/memes_prog
🇬🇧Английский: t.iss.one/english_forprogrammers
🧠ИИ: t.iss.one/vistehno
📕Ит-книги бесплатно: https://t.iss.one/addlist/BkskQciUW_FhNjEy
Python Streamlet: элементы, о которых вам следует знать в 2024 году
https://www.youtube.com/watch?v=oUm_f3ziPNw
@python_job_interview
https://www.youtube.com/watch?v=oUm_f3ziPNw
@python_job_interview
✅ Проблема с all
all в Python — это специальный атрибут модуля, определяющий список имен (функций, классов, переменных), которые будут экспортированы при использовании конструкции from module import *. Если all не задан, экспортируются все имена, которые не начинаются с подчеркивания.
❌ Однако проблема заключается в том, что all не является строгим ограничением, и разработчики все равно могут напрямую импортировать другие элементы. Это делает его скорее рекомендацией, чем обязательным правилом.
💡 Автор данной статьи предлагает способы более строгого контроля импорта. Подробности можно узнать здесь.
@python_job_interview
all в Python — это специальный атрибут модуля, определяющий список имен (функций, классов, переменных), которые будут экспортированы при использовании конструкции from module import *. Если all не задан, экспортируются все имена, которые не начинаются с подчеркивания.
❌ Однако проблема заключается в том, что all не является строгим ограничением, и разработчики все равно могут напрямую импортировать другие элементы. Это делает его скорее рекомендацией, чем обязательным правилом.
💡 Автор данной статьи предлагает способы более строгого контроля импорта. Подробности можно узнать здесь.
@python_job_interview
140_python_exercises.pdf
1.7 MB
Решение для более чем 140 основных Python задач, которые часто встречаются на собеседованиях
@python_job_interview
@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Проектирование API — это не только работа над функциональностью, но и выбор правильной архитектуры для удовлетворения ваших потребностей.
Вот шесть архитектурных проектов API, с которыми должен быть знаком каждый разработчик:
— Самая популярная архитектура для веб-сервисов.
— Использует HTTP-запросы для связи.
— Не сохраняет состояние и обеспечивает легкую масштабируемость и гибкость.
— Язык запросов для вашего API.
— Позволяет клиентам запрашивать именно то, что им нужно, не больше и не меньше.
— Идеально подходит для оптимизации сетевых запросов.
— Протокол для обмена структурированной информацией в веб-сервисах.
— Известен своими строгими стандартами и встроенной обработкой ошибок.
— Часто используется в приложениях корпоративного уровня.
- Высокопроизводительная среда с открытым исходным кодом.
- Использует HTTP/2 для транспорта и буферы протоколов в качестве языка описания интерфейса.
- Отлично подходит для микросервисов и общения в реальном времени.
- Обеспечивает двустороннюю связь между клиентом и сервером.
- Идеально подходит для приложений реального времени, таких как чат-приложения и обновления в реальном времени.
- Позволяет осуществлять непрерывный обмен данными без накладных расходов HTTP.
- Легкий протокол обмена сообщениями для небольших датчиков и мобильных устройств.
- Ориентирован на минимальное использование полосы пропускания и заряда батареи.
- Обычно используется в приложениях IoT (Интернет вещей).
#doc #cheatsheet #api
@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
✍️ Шпаргалка по PyTest
PyTest — это, пожалуй, самый популярный фреймворк для тестирования кода на Python. Данная шпаргалка охватывает следующие темы:
▪️Запуск тестов с разными опциями (-s, -v и другими).
▪️Использование фикстур и параметризации для создания многоразовых тестов.
▪️Работа с маркерами.
🔗 Ссылка на шпаргалку
@python_job_interview
PyTest — это, пожалуй, самый популярный фреймворк для тестирования кода на Python. Данная шпаргалка охватывает следующие темы:
▪️Запуск тестов с разными опциями (-s, -v и другими).
▪️Использование фикстур и параметризации для создания многоразовых тестов.
▪️Работа с маркерами.
🔗 Ссылка на шпаргалку
@python_job_interview
⚡️ LinkedIn_AIHawk — это утилита на основе ИИ, созданная пользователем Reddit, для быстрого поиска работы.
Программа адаптирует ваше резюме под описания вакансий и автоматически рассылает их.
Результаты впечатляют: за сутки автор отправил 1000 резюме, что привело к 50 приглашениям на собеседования. Бот не только корректирует резюме, но и самостоятельно отвечает на вопросы HR-менеджеров от вашего имени.
Установка:
▪ Github
@python_job_interview
Программа адаптирует ваше резюме под описания вакансий и автоматически рассылает их.
Результаты впечатляют: за сутки автор отправил 1000 резюме, что привело к 50 приглашениям на собеседования. Бот не только корректирует резюме, но и самостоятельно отвечает на вопросы HR-менеджеров от вашего имени.
Установка:
bash
$ git clone https://github.com/feder-cr/LinkedIn_AIHawk_automatic_job_application
$ cd LinkedIn_AIHawk_automatic_job_application
$ pip install -r requirements.txt
▪ Github
@python_job_interview
Проверяем отсутствие общих элементов множества и последовательности
Метод sets.isdisjoint() позволяет проверить множество sets на отсутствие общих элементов с последовательностью other. Метод возвращает True, если множество sets не имеет общих элементов с итерируемым объектом other, если имеются общие элементы то вернет False.
Синтаксис:
sets.isdisjoint(other)
Параметры:
other — объект поддерживающий итерацию (кортеж, символ или подстрока).
sets — множество frozenset или set.
@python_job_interview
Метод sets.isdisjoint() позволяет проверить множество sets на отсутствие общих элементов с последовательностью other. Метод возвращает True, если множество sets не имеет общих элементов с итерируемым объектом other, если имеются общие элементы то вернет False.
Синтаксис:
sets.isdisjoint(other)
Параметры:
other — объект поддерживающий итерацию (кортеж, символ или подстрока).
sets — множество frozenset или set.
@python_job_interview
👩💻 Как устроено преобразование типов в Python?
▪Преобразование типов — это преобразование объекта из одного типа данных в другой тип данных.
▪Неявное преобразование типов автоматически выполняется интерпретатором Python.
▪Python позволяет избежать потери данных в неявном преобразовании типов.
▪Явное преобразование типов также называется приведением типов, типы данных объекта преобразуются с использованием предопределенной функции.
▪При приведении типов может произойти потеря данных, поскольку мы приводим объект к определенному типу данных.
Что такое аннотация типов?
В простейшем случае аннотация содержит непосредственно ожидаемый тип. Аннотации для переменных пишут через двоеточие после идентификатора. После этого может идти инициализация значения. Например price: int = 5 Параметры функции аннотируются так же как переменные, а возвращаемое значение указывается после стрелки -> и до завершающего двоеточия. Например def indent_right(s: str, width: int) -> str:.
▪Преобразование типов — это преобразование объекта из одного типа данных в другой тип данных.
▪Неявное преобразование типов автоматически выполняется интерпретатором Python.
▪Python позволяет избежать потери данных в неявном преобразовании типов.
▪Явное преобразование типов также называется приведением типов, типы данных объекта преобразуются с использованием предопределенной функции.
▪При приведении типов может произойти потеря данных, поскольку мы приводим объект к определенному типу данных.
Что такое аннотация типов?
В простейшем случае аннотация содержит непосредственно ожидаемый тип. Аннотации для переменных пишут через двоеточие после идентификатора. После этого может идти инициализация значения. Например price: int = 5 Параметры функции аннотируются так же как переменные, а возвращаемое значение указывается после стрелки -> и до завершающего двоеточия. Например def indent_right(s: str, width: int) -> str:.
This media is not supported in your browser
VIEW IN TELEGRAM
Новый мощный менеджер пакетов создан, чтобы заменить привычный многим pip. Как ни странно, написан он на Rust, что позволяет ему работать значительно быстрее привычных менеджеров.
Пока неизвестно сможет ли он стать новым стандартом, покажет время. Но попробовать и узнать подробнее обо всех особенностях можно уже сейчас по ссылке:
https://astral.sh/blog/uv-unified-python-packaging
#pip #uv #инструмент
@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
✍️ Что такое match-case в Python
Конструкцию match-case ещё называют pattern matching (сопоставление с шаблонами). Суть её заключается в следующем:
✅ Оператор match принимает выражение и сравнивает его значение с последовательными шаблонами, заданными как один или несколько блоков case.
Код с match-case более структурирован и легче читается по сравнению с кодом, где прописано большое количество вложенных условий.
#вопросы_с_собеседований
Конструкцию match-case ещё называют pattern matching (сопоставление с шаблонами). Суть её заключается в следующем:
✅ Оператор match принимает выражение и сравнивает его значение с последовательными шаблонами, заданными как один или несколько блоков case.
Код с match-case более структурирован и легче читается по сравнению с кодом, где прописано большое количество вложенных условий.
#вопросы_с_собеседований
Обмен ключами и значениями словаря
Итак, насколько сложно поменять местами значения и ключи в словаре? Совсем несложно, по крайней мере, в Python.
Выше представлен действительно изящный способ манипулирования словарями.
#вопросы_с_собеседований
Итак, насколько сложно поменять местами значения и ключи в словаре? Совсем несложно, по крайней мере, в Python.
Выше представлен действительно изящный способ манипулирования словарями.
#вопросы_с_собеседований
Зачем нужен модуль struct.Struct()?
Модуль struct позволяет преобразовывать между Python-значениями и C-структурами, представленными как объекты bytes. Компактные форматные строки описывают предполагаемые преобразования в/из Python-значений.
Синтаксис:
struct.Struct(format_string)
Аргументы:
format_string — строка формата, описывающая структуру.
@python_job_interview
Модуль struct позволяет преобразовывать между Python-значениями и C-структурами, представленными как объекты bytes. Компактные форматные строки описывают предполагаемые преобразования в/из Python-значений.
Синтаксис:
struct.Struct(format_string)
Аргументы:
format_string — строка формата, описывающая структуру.
@python_job_interview
Оба этих метода являются магическими.
__getattr__
class Missing:
attr = 42
def __getattr__(self, name):
print(f"In __getattr__, asked for {name}")
return 73
m = Missing()
print(m.attr) # 42
print(m.xyz) # In __getattr__, asked for xyz; 73
Пример кода выше показывает, как метод используется для обработки запроса несуществующего атрибута xyz.
__getattribute__
class Always:
attr = 42
def __getattribute__(self, name):
print(f"In __getattribute__, asked for {name}")
return 73
a = Always()
print(a.attr) # In __getattribute__, asked for attr; 73
print(a.xyz) # In __getattribute__, asked for xyz; 73
Здесь же можно увидеть, что метод используется для обработки запросов всех атрибутов, как существующих (attr), так и несуществующих (xyz).
__getattribute__
— это метод, который управляет всеми запросами атрибутов, тогда как __getattr__
вызывается, когда __getattribute__
не находит атрибут. #вопросы_с_собеседований
@python_job_interview
Please open Telegram to view this post
VIEW IN TELEGRAM