Pythoner
Відкрити в Telegram
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode
Показати більше6 786
Підписники
-824 години
-197 днів
-4430 день
Архів дописів
6 783
Ищете готовые скрипты 💾 на Python❓
На канале Python_Scripts всегда огромный выбор🚀🧑🏻💻
- боты 🛠
- парсеры📁
- чекеры🔍
- автоматизация🔧
- многое другое💻
Подписывайтесь и пользуйтесь!
Ссылка на канал : 👇👇👇👇👇
📌https://t.me/Py_Script
6 783
🔎В программировании, сборщик мусора - это механизм, который автоматически удаляет объекты, которые больше не используются программой, освобождая память. Сборщик мусора очень полезен для устранения утечек памяти и других проблем с управлением памятью.
➡️В Python сборка мусора - это часть виртуальной машины Python. Сборка мусора в Python работает следующим образом:
1. Когда объект создается, он помещается в "кучу" (heap).
2. Когда объект больше не используется, сборщик мусора помечает его как "мусор".
3. Сборщик мусора периодически запускается и проверяет все объекты в куче.
4. Если объект помечен как "мусор", сборщик мусора удаляет его из памяти.
➡️Сборка мусора в Python происходит автоматически и не требует дополнительного управления со стороны разработчика. Однако, если вы работаете с большими объемами данных, может быть полезно вручную вызывать сборщик мусора с помощью метода
gc.collect().
➡️Сборщик мусора имеет некоторые недостатки. Он может замедлять работу программы, так как сборка мусора занимает время процессора. Кроме того, сборка мусора может быть непредсказуемой, особенно если программа использует много памяти.
🐍Pythoner6 783
Опрос для программистов, полностью анонимный!
Помоги работодателям стать лучше 🥰
Заполни опросник и прими участие в крупном исследовании - https://forms.gle/9VFhR3xnDAHbqSA59?erid=LjN8KCkHb
6 783
🔎Хакатоны - это мероприятия, на которых программисты собираются вместе, чтобы работать в коллективе над проектами. Они обычно проходят на выходных и включают в себя много работы за короткое время.
➡️Цель и формат хакатонов
Цель хакатонов - это создание рабочих прототипов программных продуктов в короткие сроки. Это помогает разработчикам проверить, насколько их идеи реализуемы, и получить обратную связь от других участников и экспертов. Формат хакатонов очень разнообразен - от небольших встреч в офисах компаний до крупных соревнований, на которых участвуют сотни программистов. В любом случае, участники работают в командах, обычно состоящих из 3-5 человек, и имеют на выбор несколько тематик для работы.
➡️Преимущества участия в хакатонах
Хакатоны предоставляют программистам множество возможностей для роста и развития. Во-первых, они могут помочь научиться работать в команде и улучшить свои навыки коммуникации и организации. Во-вторых, участники могут узнать много нового о технологиях и инструментах, которые используют другие участники. Наконец, вас могут заметить компании, либо за победу будет объявлен денежныц приз. Кроме того, хакатоны могут просто быть замечательной возможностью для поиска новых контактов и друзей в отрасли.
🐍Pythoner
6 783
🔎GIL, или Global Interpreter Lock, является механизмом в CPython, который ограничивает выполнение Python-кода одним потоком в один момент времени. Это означает, что даже если у вас есть несколько потоков в Python-программе, только один поток может выполняться в любой момент времени.
➡️Как работает GIL?
GIL - это блокировка, которая накладывается на интерпретатор Python, чтобы предотвратить одновременное выполнение Python-кода несколькими потоками. Все объекты Python имеют ссылки на них, которые хранятся в глобальном пространстве имен. GIL гарантирует, что только один поток может получить доступ к этому глобальному пространству имен в любой момент времени. Когда поток хочет выполнить Python-код, он должен получить эту блокировку. Если блокировка уже занята другим потоком, поток будет ожидать, пока блокировка не освободится. Когда блокировка освобождается, следующий поток может получить ее и продолжить выполнение Python-кода.
➡️Влияние GIL на производительность
GIL может оказывать негативное влияние на производительность Python-программ. Это связано с тем, что только один поток может выполнять Python-код в любой момент времени. Если у вас есть множество потоков, которые ожидают доступа к GIL, это может привести к значительному снижению производительности вашей программы.
🐍Pythoner
6 783
🐳Docker - это платформа для разработки, доставки и запуска приложений в контейнерах. Контейнеры позволяют упаковать приложения и все необходимые для их работы компоненты в одну единицу, которая может быть легко перенесена между окружениями.
➡️Контейнеры и образы
Docker использует контейнеры для упаковки и запуска приложений. Контейнеры представляют собой изолированные среды, которые содержат все необходимые компоненты для работы приложения. Контейнеры создаются из образов, которые являются основой для контейнеров. Образы содержат все необходимые компоненты, включая операционную систему, библиотеки и зависимости приложения.
➡️Dockerfile
Dockerfile - это текстовый файл, который содержит инструкции для создания Docker-образа. Dockerfile определяет операционную систему, настройки окружения, установку зависимостей и т. д. Создание Docker-образа с помощью Dockerfile позволяет автоматизировать процесс сборки и развертывания приложения.
➡️Docker Compose
Docker Compose - это инструмент для определения и запуска многоконтейнерных Docker-приложений. Docker Compose использует файл docker-compose.yml для определения сервисов, которые необходимо запустить, а также их настроек. Docker Compose позволяет легко запускать и масштабировать приложения, состоящие из нескольких сервисов.
🐍Pythoner
6 783
⚡️Хакатон GeoVision Hack
Трёхдневное соревнование в гибридном формате, которое соберет талантливых разработчиков со всей России для работы над увлекательным кейсом от организаторов!
🧑💻Принять участие в хакатоне смогут студенты ИТ-направлений; junior, middle и senior разработчики, готовые разработать лучшее решение актуального кейса!
🚀Кейс, который предстоит решить: Алгоритм для автооцифровки данных геофизических исследований скважин (ГИС)
Что тебя ждёт?
- Знакомство с участниками и экспертами компаний
- Новый кейс в портфолио
- Соревнование и командная работа
🏆Призовой фонд – 300.000 ₽
🗓️Дата проведения: 24 - 26 Мая
📍Формат: Онлайн/Офлайн в г. Москва
Подробная информация и регистрация: https://tglink.io/82d15d1b1022
6 783
➡️Существует множество популярных библиотек ORM, доступных в Python, каждая со своими преимуществами и недостатками. Некоторые из наиболее популярных библиотек включают SQLAlchemy, Django ORM и Peewee.
➡️SQLAlchemy является популярным выбором, потому что он настраиваемый и предоставляет широкий спектр функций, включая поддержку нескольких баз данных. Django ORM - это еще один популярный выбор, особенно для разработчиков, использующих веб-фреймворк Django. Peewee - это легкий ORM, который легко использовать и предоставляет простой API для взаимодействия с базами данных.
🐍Pythoner
6 783
🔎ORM - это аббревиатура от Object-Relational Mapping, что в переводе означает "отображение объектов на реляционные структуры данных". ORM - это технология, которая позволяет программистам работать с данными в базах данных, используя объектно-ориентированный подход.
➡️Как работает ORM
ORM позволяет программистам работать с базами данных, не взаимодействуя с ними напрямую. Вместо этого, ORM предоставляет программистам API, который позволяет им работать с данными, как если бы они были объектами в коде. ORM берет на себя задачу преобразования объектов в данные, которые могут быть сохранены в базе данных, и обратно.
➡️Преимущества ORM
Одним из главных преимуществ ORM является упрощение процесса разработки. ORM позволяет программистам сосредоточиться на разработке бизнес-логики, а не на взаимодействии с базами данных. Кроме того, ORM обеспечивает безопасность данных, так как предотвращает возможность SQL-инъекций. В целом, ORM делает процесс разработки более быстрым, эффективным и безопасным.
🐍Pythoner
6 783
🚀 Регистрация на хакатон «Ясная Система: сделай сложное понятным» от МТС стартовала! У тебя будет неделя, чтобы попрактиковаться в машинном обучении и сделать финтех инклюзивнее.
Призовой фонд – 375 000 рублей. Оставляй заявку до 24 мая и участвуй в соревновании онлайн из любого города России: https://cnrlink.com/mtshackpyth0ner
🤖 Задача – создать сервис, который сможет перевести сложные банковские тексты из датасета в ясные формулировки, подходящие для людей с ментальными особенностями, пожилых людей и иностранцев, плохо владеющих русским языком.
Церемония открытия соревнования пройдет 25 мая на фестивале «Система Fest» в Томском государственном университете. Посетители смогут поучаствовать в насыщенной программе мероприятия.
Для онлайн-участников МТС проведет два митапа с экспертами. 2 июня авторы 10 лучших проектов выступят с питчингами на церемонии награждения победителей.
➡️ Регистрируйся прямо сейчас, чтобы ничего не пропустить: https://cnrlink.com/mtshackpyth0ner
Реклама. ПАО "МТС". Маркер: LjN8KGrrq
6 783
➡️В современном мире базы данных являются неотъемлемой частью многих приложений. Однако, перед выбором базы данных, необходимо понимать различия между типами баз данных. Сегодня мы рассмотрим разницу между SQL и NoSQL базами данных.
➡️SQL базы данных
SQL (Structured Query Language) - это язык программирования, который используется для управления реляционными базами данных. SQL базы данных используют таблицы для хранения информации, а каждая таблица состоит из строк и столбцов. SQL базы данных поддерживают транзакции, что обеспечивает целостность данных. Они также легко масштабируются, что позволяет управлять большими объемами данных.
➡️NoSQL базы данных
NoSQL (Not Only SQL) базы данных - это новый тип баз данных, который не использует традиционные таблицы для хранения информации. Вместо этого, они используют документы, ключи и значения, графы или колоночные семейства. NoSQL базы данных были созданы для управления большими объемами данные с высокой скоростью и производительностью. Они также легко масштабируются, что делает их отличным выбором для приложений, которые необходимо расширять.
➡️Различия между SQL и NoSQL базами данных
Основное различие между SQL и NoSQL базами данных заключается в том, как они хранят и управляют данными. SQL базы данных используют таблицы, которые связаны друг с другом по ключам внешних таблиц. NoSQL базы данных используют документы, ключи и значения, графы или колоночные семейства, которые могут хранить неструктурированные данные. SQL базы данных имеют строгую схему, что означает, что каждый элемент данных должен соответствовать заданной схеме. NoSQL базы данных, с другой стороны, не имеют строгой схемы, что позволяет добавлять данные без необходимости изменения схемы.
🐍Pythoner
6 783
Программирование сейчас - один из немногих социальных лифтов, доступных всем!
Лучший способ начать свой путь в IT - изучать Python. Этот язык не такой сложный для изучения, однако на нем создают сайты, чат-боты и даже искусственный интеллект. Например, Netflix, YouTube и Google написаны на этом языке.
С нуля стать опытным разработчиком со средней зарплатой в 180 000 рублей можно в онлайн-школе Product Star на курсе “Профессия: Python-разработчик”. Курс создан специалистами из топовых компаний с реальным опытом в индустрии, благодаря чему в процессе обучения вы будете погружаться в реальные кейсы.
После обучения ваше портфолио пополнится проектами, которые будет не стыдно показать любому работодателю. И самое главное: Product Star гарантируют трудоустройство, а если в процессе поймете, что специальность не для вас, вам вернут деньги.
Станьте Python-разработчиком вместе с ProductStar. Скидка до 57% и техническое собеседование с топовым разработчиком в подарок - https://tglink.io/5a94cd3e8b06
Реклама. ООО "ТРИВИУМ". ИНН 7806297293.
6 783
➡️Одной из главных функций Collections Counter является подсчет элементов в коллекции. Для этого необходимо импортировать модуль collections и создать объект Counter с передачей коллекции в качестве аргумента. В результате выполнения функции мы получим словарь, где ключами будут элементы коллекции, а значениями — их количество. Рассмотрим пример:
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
print(counted_elements)
В результате выполнения этого кода мы получим следующий словарь:
{1: 1, 2: 2, 3: 3, 4: 4}
➡️Переопределение элементов коллекции
С помощью Collections Counter мы также можем переопределить элементы коллекции. Для этого необходимо создать объект Counter для исходной коллекции и передать новые значения с помощью метода update(). Рассмотрим пример:
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
print(counted_elements)
counted_elements.update({2: 5, 5: 1})
print(counted_elements)
В результате выполнения этого кода мы получим следующий словарь:
{1: 1, 2: 2, 3: 3, 4: 4}
{1: 1, 2: 7, 3: 3, 4: 4, 5: 1}
➡️Нахождение n наиболее часто встречающихся элементов
Collections Counter также позволяет находить n наиболее часто встречающихся элементов в коллекции. Для этого необходимо использовать метод most_common(n), где n — количество наиболее часто встречающихся элементов, которые нужно найти. Рассмотрим пример:
from collections import Counter
lst = [1, 2, 2, 3, 3, 3, 4, 4, 4, 4]
counted_elements = Counter(lst)
most_common_elements = counted_elements.most_common(2)
print(most_common_elements)
В результате выполнения этого кода мы получим следующий список:
[(4, 4), (3, 3)]🐍Pythoner
6 783
Программирование сейчас - один из немногих социальных лифтов, доступных всем!
Лучший способ начать свой путь в IT - изучать Python. Этот язык не такой сложный для изучения, однако на нем создают сайты, чат-боты и даже искусственный интеллект. Например, Netflix, YouTube и Google написаны на этом языке.
С нуля стать опытным разработчиком со средней зарплатой в 180 000 рублей можно в онлайн-школе Product Star на курсе “Профессия: Python-разработчик”. Курс создан специалистами из топовых компаний с реальным опытом в индустрии, благодаря чему в процессе обучения вы будете погружаться в реальные кейсы.
После обучения ваше портфолио пополнится проектами, которые будет не стыдно показать любому работодателю. И самое главное: Product Star гарантируют трудоустройство, а если в процессе поймете, что специальность не для вас, вам вернут деньги.
Станьте Python-разработчиком вместе с ProductStar. Скидка до 57% и техническое собеседование с топовым разработчиком в подарок - https://tglink.io/5a94cd3e8b06
Реклама. ООО "ТРИВИУМ". ИНН 7806297293.
6 783
➡️NamedTuple
NamedTuple - это подтип кортежа, который позволяет объявлять собственные именованные типы, которые могут использоваться в качестве структуры данных. Он предоставляет возможность определить тип данных с помощью именованных полей. Каждое поле имеет свой собственный тип данных. Это может быть полезно в случаях, когда вам нужно создать объекты с определенными свойствами.
К примеру, если вы создаете объекты, представляющие собой записи в базе данных, вы можете использовать NamedTuple, чтобы создать тип данных, содержащий поля, соответствующие полям в таблице.
from collections import namedtuple
Person = namedtuple('Person', ['name', 'age'])
person1 = Person(name='John', age=30)
person2 = Person(name='Jane', age=25)
print(person1.name) # John
print(person2.age) # 25
Или например:
from collections import namedtuple
Person = namedtuple('Person', 'name age')
person1 = Person('John', 30)
person2 = Person(name='Jane', age=25)
print(person1.name) # John
print(person2.age) # 25
🐍Pythoner6 783
Ищете готовые скрипты 💾 на Python❓
На канале Python_Scripts всегда огромный выбор🚀🧑🏻💻
- боты 🛠
- парсеры📁
- чекеры🔍
- автоматизация🔧
- многое другое💻
Подписывайтесь и пользуйтесь!
Ссылка на канал : 👇👇👇👇👇
📌https://t.me/Py_Script
6 783
❓Разбор
Вызываем функцию rec, передавая туда значение 3.
Внутри функции идет проверка, где мы в return'e возвращаем результат n + новый вызов функции rec(n-1) —> rec(2)
Операция повторяется и мы возвращаем результат n + rec(n-1) —> n + rec(1)
Заходим заново в функцию и возвращаем n + rec(0) —> теперь после вызова сработает return 1, т.к. if проверяет что n==0.
После чего, идем замыкать рекурсию в обратную сторону.
n + rec(0) —> 1 + 1 —> 2
n + rec(1) —> 2 + 2 —> 4
n + rec(2) —> 3 + 4 —> 7
Вже доступно! Дослідження Telegram за 2025 — головні інсайти року 
