Python Tech Talks
144 subscribers
361 photos
13 links
Python Tech Talks - это лучший телеграмм-канал для программистов на языке Python 🐍

Ссылка на канал: https://t.me/PythonTechTalks ✨

По всем вопросам: https://t.me/ARIM_bio🔥
Поддержка: pythontechtalks@gmail.com🍀
Download Telegram
Динамическое программирование

Динамическое программирование - это система решения заданий, которая предполагает, что большая проблема будет разбита на более мелкие задачи, которые более понятные в решении. 😉🪽

Работа динамического программирования очень похожа на рекурсию с запоминанием промежуточных решений — такую рекурсию еще называют мемоизацией. Рекурсивные алгоритмы, как правило, разбивают большую задачу на более мелкие подзадачи и решают их. Динамические алгоритмы делят задачу на кусочки и вычисляют их по очереди, шаг за шагом наращивая решения. Поэтому динамические алгоритмы можно представить как рекурсию, работающую снизу вверх. 🪜

Магия динамического программирования заключается в умном обращении с решениями подзадач. «Умный» в этом контексте значит «не решающий одну и ту же подзадачу дважды». Для этого решения мелких подзадач должны где-то сохраняться. Для многих реальных алгоритмов динамического программирования этой структурой данных является таблица. 🪄🪧
👏2
Сортировка пузырьком

Обратите внимание, что из всех алгоритмов у сортировки пузырьком наихудший случай и среднее значение:
Временная сложность = O(n²).
Внутренний цикл работает не менее n раз. Поэтому операция займет не менее n² времени

Пространственная сложность = O(1).
Дополнительная память не используется, потому что происходит обмен элементов в исходном массиве.

#алгоритмы
🔥2
Tabulate

Tabulate используется для создания таблиц с удобным дизайном. В ней есть множество функций форматирования для удобного вывода словарей, списков, двумерных массивов библиотек NumPy и Pandas. Кроме консоли Tabulate поддерживает выгрузку данных и в различных веб-форматах — от HTML до Markdown Extra.

#библиотеки
👍2
Книга: "Большая книга проектов Python. Свейгарт Эл"

Если вы уже освоили основы Python, эта книга поможет вам отточить свои навыки на математических задачах, головоломках, играх, анимации, моделированию процессов и т. д.

В каждой главе вы найдете:
- Описание программы;
- Результат выполнения программы;
- Код программы с подробным объяснением;
- Задания для самостоятельного исследования.

#книги
❤3👍1
Объединение множеств
Метод union()


Объединение множеств – это множество, состоящее из элементов, принадлежащих хотя бы одному из объединяемых множеств. Для этой операции существует метод union().

#методы
👍2
👍2
Что выведет приведённый выше код?
Anonymous Quiz
3%
2
39%
Ничего
58%
1
0%
4
Двусторонняя очередь в Python

Класс collections.deque() это обобщение стеков и очередей и представляет собой двустороннюю очередь. Двусторонняя очередь deque() поддерживает поточно-ориентированные, эффективные по памяти операции добавления и извлечения элементов последовательности с любой стороны с примерно одинаковой производительностью O(1) в любом направлении.

Класс deque() модуля collections возвращает новый объект deque(), инициализированный слева направо данными из итерируемой последовательности iterable.

Если хотите больше узнать про двустороннюю очередь в Python - ставьте как можно больше реакций под этот пост🤖😎

#типы_данных
👍3🔥2
Какие из следующих тем вы бы хотели больше всего, чтобы мы разобрали на канале?
Final Results
46%
Парсинг сайтов
39%
Оценка сложно алгоритмов
21%
Как реализуется камера
21%
Компиляторы и интерпретаторы
👍5
Книга: "Алгоритмы неформально. Инструкция для начинающих питонистов. Такфилд Брэдфорд"

Вы узнаете нюансы реализации многих самых популярных алгоритмов, познакомитесь с их реализацией на Python 3, а также научитесь измерять и оптимизировать их производительность. После прочтения книги вы научитесь:

- Использовать алгоритмы для построения чат-ботов, настольных игр и решения головоломок «судоку».
- Искать максимумы и минимумы с помощью алгоритма градиентного спуска.
- Строить деревья решений для предсказания вашего уровня счастья.
- Использовать алгоритмы отладки кода, максимизации доходов и генерирования случайных чисел.
- Измерять эффективность и скорость алгоритмов.

#книги
👏4
Конструкция with в Python используется для работы с файлами и гарантирует, что файл будет закрыт после завершения работы с ним, даже если произойдет исключение.

Приведенный выше код открывает файл 'example.txt' в режиме чтения ('r') с помощью конструкции with. Затем он читает содержимое файла с помощью метода read() и сохраняет его в переменную text. Наконец, текст выводится на экран с помощью функции print().
👍3🔥1
Сегодня 20 января - День видеокамеры🎥📷

Это день благодарности инженерам, создавшим революционное устройство в мире кинематографа. Дата выбрана неслучайно. В этот день в 1982 году компания Sony Electronics впервые представила миру первую ручную видеокамеру Betacam для домашнего использования.
👍3👏1
👍1
Что выведет приведённый выше код?
Anonymous Quiz
36%
1
34%
9541727
30%
2
0%
4
Altair

Altair — это библиотека Python для статистической визуализации. Она носит «декларативный» характер: разработчикам не нужно писать объемный код для визуализации, а достаточно указать на связь с данными. Altair не поддерживает 3D, но особенно полезен для создания составных и комплексных 2D-графиков.

#библиотеки
🤔2👍1🔥1
😁2👍1
Мой топ-5🔝 языков программирования на данный момент выглядит следующим образом:

1⃣ Python - Python занимает лидирующую позицию благодаря своей простоте, универсальности и широкому применению в различных областях, включая разработку веб-приложений, научные проекты, анализ данных и машинное обучение 🐍

2⃣ JavaScript - JavaScript остается одним из самых популярных языков программирования благодаря его использованию в веб-разработке, создании интерактивных интерфейсов и разработке приложений для мобильных устройств 🟨⚫️

3⃣ Java - Java остается одним из основных языков программирования для разработки корпоративных приложений, мобильных приложений на платформе Android, игр и встроенных систем ☕️

4⃣ C++ - используется для разработки высокопроизводительных приложений, игр, системного программирования, а также в области машинного обучения и компьютерной графики 🐀

5⃣ SQL - несмотря на то, что это язык запросов, он является фундаментальным инструментом для работы с базами данных и анализа данных 🔐📂

#программирование
🔥5👏1🦄1
Книга: "Black Hat Python: программирование для хакеров и пентестеров, 2-е изд. Джастин Зейтц, Тим Арнольд"

Во втором выпуске бестселлера Black Hat Python вы исследуете темную сторону возможностей Python: все, от написания сетевых снифферов, кражи учетных данных электронной почты и перебора каталогов до создания фаззеров мутаций, исследования виртуальных машин и создания скрытых троянов. Книга отлично подходит для всех кто хочет изучить основы хакинга.

#книги
👍4🆒2
Pillow

Pillow и его предшественник PIL — это оригинальные библиотеки Python для работы с изображениями. Несмотря на то, что существуют другие библиотеки Python для обработки изображений, Pillow остается важным инструментом для понимания и работы в целом.

Для оперирования и обработки изображений Pillow предоставляет инструменты, аналогичные тем, которые можно найти в программном обеспечении, таком как Photoshop. Некоторые из более современных библиотек обработки изображений Python построены на основе Pillow и часто предоставляют более продвинутую функциональность.

#библиотеки
👍4