BST - это древовидная структура данных, в которой каждый узел имеет максимум два потомка. Основное свойство BST заключается в том, что каждый узел на большее значение, чем все узлы в его левом поддереве и на меньшее значение, чем все узлы в его правом поддереве. Этот уникальный атрибут делает BST идеальным для быстрого поиска данных.
class Node:
def __init__(self, key):
self.left = None
self.right = None
self.val = key
def insert(root, key):
if root is None:
return Node(key)
else:
if root.val < key:
root.right = insert(root.right, key)
else:
root.left = insert(root.left, key)
return root
def inorder(root):
if root:
inorder(root.left)
print(root.val),
inorder(root.right)
r = Node(50)
r = insert(r, 30)
r = insert(r, 20)
r = insert(r, 40)
r = insert(r, 70)
r = insert(r, 60)
r = insert(r, 80)
inorder(r)
В этом примере мы создаем BST с помощью Python. Мы определяем класс Node, который представляет узел в BST. Затем мы определяем функции для вставки нового узла и для обхода BST.
BST имеют множество преимуществ, благодаря которым они широко используются. Они позволяют быстро осуществлять поиск, вставку и удаление данных. Однако BST также имеют некоторые недостатки. Например, если дерево не сбалансировано, время поиска может увеличиться.
То есть, по сути, это сортированное дерево, поиск в котором легко выполнить, из-за того, что оно упорядочено.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1👍1
Многопоточность - это метод, который позволяет коду выполняться параллельно. Это означает, что два или более куска кода могут работать одновременно, что делает обработку данных более эффективной. В Python для создания многопоточных программ можно использовать модуль threading. При использовании этого модуля, каждый цикл будет работать в своем собственном потоке, что позволяет им работать одновременно.
Для создания двух одновременно работающих циклов вам потребуется создать два потока. Каждый поток будет выполнять свой собственный цикл. Вот пример того, как это может выглядеть:
import threading
import time
def loop1():
for i in range(10):
print('Loop 1:', i)
time.sleep(1)
def loop2():
for i in range(10):
print('Loop 2:', i)
time.sleep(1)
thread1 = threading.Thread(target=loop1)
thread2 = threading.Thread(target=loop2)
thread1.start()
thread2.start()
thread1.join()
thread2.join()import threading
import time
def loop1():
for i in range(10):
print('Loop 1:', i)
time.sleep(1)
def loop2():
for i in range(10):
print('Loop 2:', i)
time.sleep(1)
thread1 = threading.Thread(target=loop1)
thread2 = threading.Thread(target=loop2)
thread1.start()
thread2.start()
thread1.join()
thread2.join()
В этом примере два цикла выполняются одновременно, каждый в своем собственном потоке.
Попробуйте скопировать и проверить у себя самостоятельно!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤2
Какие вообще сайты кроме хабра и hh знаете, где можно искать стажировки?
https://www.youtube.com/watch?v=Q3PMuGaOQzY
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
ПАРСИНГ ВАКАНСИЙ на Python | Requests | BeautifulSoup
В этом видео займемся парсингом. Парсить будем вакансии с хабр карьеры. Если интересно сделать из этого проект, то поддержите видос комментом и лайком!
👨💻 Подписывайся на наш телеграм канал! 👨💻
🖇 https://t.me/pythonhub001 🖇
👨💻 И вступай в чат 👨💻
🖇 …
👨💻 Подписывайся на наш телеграм канал! 👨💻
🖇 https://t.me/pythonhub001 🖇
👨💻 И вступай в чат 👨💻
🖇 …
❤2
❤2👍2
Python Hub - сборище Питонистов
Photo
Разбор 👨💻
Функция getsizeof() модуля sys возвращает размер объекта object в байтах. Объект может быть любым типом объекта.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1
А какие принципы используете вы? Какие считаете занудством?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1
👋 Сегодня обсудим, какие языки программирования и разметки чаще всего используют в связке с нашим любимым Python 🐍.
JavaScript 🌐
Используется для фронтенда в веб-разработке. Вместе с Python (Django, Flask) JavaScript позволяет создавать динамичные и интерактивные веб-приложения. Вспомните такие связки как Django + React или Flask + Vue.js.
HTML & CSS 🎨
Без этих языков никуда, когда речь идет о веб-разработке. HTML отвечает за структуру, а CSS за стиль ваших страниц. Python часто используется для генерации HTML-кода и работы с CSS-стилями.
SQL 🗄
Язык запросов к базам данных. Python имеет отличные библиотеки для работы с SQL, такие как SQLAlchemy и SQLite. Любое серьезное приложение не обходится без взаимодействия с базами данных.
Markdown 📄
Легкий язык разметки для написания документации. Блоги, README файлы на GitHub и многое другое часто пишется на Markdown. Отлично подходит для документирования кода на Python.
YAML/JSON 📑
Форматы данных, которые используются для конфигурационных файлов. Они легко читаются человеком и часто применяются для настройки различных сервисов и библиотек на Python.
💬 А какие связки используете вы? Пишите в комментариях! 👇
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
😎Потрогали Flet.
Кто-то уже с ним работал?
Может кто-то тут писал на Flutter?
https://www.youtube.com/watch?v=YMuSvA4F_tQ&ab_channel=Shcoder
Кто-то уже с ним работал?
Может кто-то тут писал на Flutter?
https://www.youtube.com/watch?v=YMuSvA4F_tQ&ab_channel=Shcoder
YouTube
КРАСИВЫЕ КРОССПЛАТФОРМЕННЫЕ PYTHON ПРИЛОЖЕНИЯ используя Flet
В этом видео мы посмотрим новый фреймворк Flet, который уже успел пошуметь за счет того, что может создавать кроссплатформенные приложения на Python, не используйя других языков.
👨💻 Подписывайся на наш телеграм канал! 👨💻
🖇 https://t.me/pythonhub001 🖇
…
👨💻 Подписывайся на наш телеграм канал! 👨💻
🖇 https://t.me/pythonhub001 🖇
…
👍5
🐍 Топ-5 сайтов, о которых должен знать Python-разработчик 🌐
1. Stack Overflow 💡
Stack Overflow — это один из крупнейших ресурсов для программистов, где вы можете задать любой вопрос, связанный с программированием, и получить ответ от профессионалов. Это настоящий кладезь знаний, где вы найдёте решение для большинства проблем, с которыми может столкнуться Python-разработчик.
🔗 Перейти на Stack Overflow
2. Real Python 📘
Real Python — это ресурс, созданный специально для тех, кто хочет глубже изучить Python. Здесь вы найдете качественные туториалы, статьи и видеоуроки от опытных разработчиков. Real Python охватывает широкий спектр тем: от основ до продвинутых техник программирования.
🔗 Перейти на Real Python
3. GitHub 🐙
GitHub — это платформа для хостинга и совместной разработки проектов. Здесь вы можете найти тысячи репозиториев с открытым исходным кодом, изучать код других разработчиков и делиться своими проектами. GitHub — незаменимый инструмент для любого программиста.
🔗 Перейти на GitHub
4. PyPI (Python Package Index) 📦
PyPI — это центральный репозиторий всех библиотек и пакетов Python. Если вам нужен какой-либо модуль для вашего проекта, скорее всего, вы найдете его на PyPI. Удобный интерфейс и возможность быстрого поиска делают этот ресурс незаменимым для любого разработчика.
🔗 Перейти на PyPI
5. Python Documentation 📚
Python Documentation — это официальный сайт с документацией по Python. Здесь вы найдете полное описание всех встроенных функций, модулей и библиотек Python. Документация регулярно обновляется и является авторитетным источником информации для всех уровней разработчиков.
🔗 Перейти на Python Documentation
1. Stack Overflow 💡
Stack Overflow — это один из крупнейших ресурсов для программистов, где вы можете задать любой вопрос, связанный с программированием, и получить ответ от профессионалов. Это настоящий кладезь знаний, где вы найдёте решение для большинства проблем, с которыми может столкнуться Python-разработчик.
🔗 Перейти на Stack Overflow
2. Real Python 📘
Real Python — это ресурс, созданный специально для тех, кто хочет глубже изучить Python. Здесь вы найдете качественные туториалы, статьи и видеоуроки от опытных разработчиков. Real Python охватывает широкий спектр тем: от основ до продвинутых техник программирования.
🔗 Перейти на Real Python
3. GitHub 🐙
GitHub — это платформа для хостинга и совместной разработки проектов. Здесь вы можете найти тысячи репозиториев с открытым исходным кодом, изучать код других разработчиков и делиться своими проектами. GitHub — незаменимый инструмент для любого программиста.
🔗 Перейти на GitHub
4. PyPI (Python Package Index) 📦
PyPI — это центральный репозиторий всех библиотек и пакетов Python. Если вам нужен какой-либо модуль для вашего проекта, скорее всего, вы найдете его на PyPI. Удобный интерфейс и возможность быстрого поиска делают этот ресурс незаменимым для любого разработчика.
🔗 Перейти на PyPI
5. Python Documentation 📚
Python Documentation — это официальный сайт с документацией по Python. Здесь вы найдете полное описание всех встроенных функций, модулей и библиотек Python. Документация регулярно обновляется и является авторитетным источником информации для всех уровней разработчиков.
🔗 Перейти на Python Documentation
❤3
Крипта в TG webApp. Что вы собираете? (мультивыбор)
Anonymous Poll
30%
NotCoin
28%
Blum
34%
Хомячок
10%
Другая тапалка (в комменты)
40%
Не верю в это
18%
А что енто такое?
🔍 CV2: Ваш ключ к компьютерному зрению с Python 🐍
Что такое CV2? 🤔
CV2 — это модуль OpenCV, открытая библиотека для обработки изображений и видео. Она поддерживает множество языков программирования, но наиболее активно используется в Python. CV2 предлагает широкий спектр функций для анализа и манипуляции изображениями и видеопотоками.
Основные функции CV2 🔧
1. Загрузка и сохранение изображений 🖼
Эти простые функции позволяют загружать и сохранять изображения в различных форматах.
2. Отображение изображений 🖥
Отличный способ быстро визуализировать изображения в отдельном окне.
3. Изменение размеров изображения 📏
Полезно для подготовки данных к анализу или просто для уменьшения размера файла.
Что такое CV2? 🤔
CV2 — это модуль OpenCV, открытая библиотека для обработки изображений и видео. Она поддерживает множество языков программирования, но наиболее активно используется в Python. CV2 предлагает широкий спектр функций для анализа и манипуляции изображениями и видеопотоками.
Основные функции CV2 🔧
1. Загрузка и сохранение изображений 🖼
import cv2
# Загрузка изображения
image = cv2.imread('path_to_image.jpg')
# Сохранение изображения
cv2.imwrite('output_image.jpg', image)
Эти простые функции позволяют загружать и сохранять изображения в различных форматах.
2. Отображение изображений 🖥
cv2.imshow('Image', image)
cv2.waitKey(0)
cv2.destroyAllWindows()Отличный способ быстро визуализировать изображения в отдельном окне.
3. Изменение размеров изображения 📏
resized_image = cv2.resize(image, (width, height))
Полезно для подготовки данных к анализу или просто для уменьшения размера файла.
👍3❤1🥰1
Выберите самый жизненный кейс в вашем кодописании?⚠️😁
😁5❤3