• Как продакт-менеджеру учить английский: план, сроки, советы
• Иллюзия прогресса: почему мне не удалось дать студентам-айтишникам реальный опыт
• Из подземелья в QA: как и почему я перешёл в тестирование после 14 лет работы сисадмином в метрополитене
• Нам не нужны кодеры, нам нужны инженеры-разработчики
• Как мы разработали систему грейдинга для системных аналитиков
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡2
Сейчас ты всё помнишь. Но через месяц? Или кто-то другой?
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Напишите функцию, которая принимает список чисел и возвращает второе наибольшее число. Если в списке меньше двух уникальных чисел, функция должна вернуть
None
.[10, 20, 4, 45, 99]
45
[5, 5, 5]
None
Решение задачи
def find_second_largest(numbers):
# Удаляем дубликаты и сортируем список в порядке убывания
unique_numbers = sorted(set(numbers), reverse=True)
# Если уникальных чисел меньше двух, возвращаем None
return unique_numbers[1] if len(unique_numbers) >= 2 else None
# Пример использования:
print(find_second_largest([10, 20, 4, 45, 99])) # Ожидаемый результат: 45
print(find_second_largest([5, 5, 5])) # Ожидаемый результат: None
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡1
В Python менеджеры контекста используются для управления ресурсами, такими как файлы или сетевые соединения, автоматически освобождая их после использования. Они реализуются с помощью методов
__enter__
и __exit__
.with open('file.txt', 'r') as file:
content = file.read()
Здесь файл автоматически закроется после завершения блока
with
, даже если внутри него возникнет ошибка.🗣️ Менеджеры контекста полезны для автоматического управления ресурсами и обработки исключений.
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡2
В статье рассказывается, как настроить автоматический деплой Telegram-бота на сервер с использованием GitHub Actions. Это поможет ускорить обновление кода и минимизировать ошибки при ручной загрузке.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡1
В 2010 году пользователь Stack Overflow не справился с задачей на собеседовании. Обсуждение способов решения этого задания стало одной из самых популярных тем на платформе.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
@property
в Python и зачем он нужен?Декоратор
@property
в Python превращает метод класса в атрибут, позволяя работать с ним, как с обычным свойством. Это упрощает доступ к приватным данным и добавляет контроль за их валидацией и изменением.С помощью
@property
можно создавать интерфейс для работы с данными объекта, защищая их от некорректных значений и обеспечивая читаемость кода.@property
используется для создания свойства age
, которое проверяет корректность введенного значения:class Person:
def __init__(self, age):
self._age = age
@property
def age(self):
return self._age
@age.setter
def age(self, value):
if value < 0:
raise ValueError("Возраст не может быть отрицательным.")
self._age = value
p = Person(30)
p.age = 35 # Работает нормально
print(p.age) # 35
p.age = -5 # ValueError: Возраст не может быть отрицательным.
🗣 Использование @property полезно для создания аккуратного интерфейса доступа к данным с их защитой и валидацией, соблюдая при этом принципы инкапсуляции.
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡2
Сегодня поговорим о объектах, объектной архитектуре и способах взаимодействия с ними на примере языков программирования Python и JavaScript. Получилось небольшое исследование, противопоставляющее прототипирование и ООП.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Расскажем, как превратить Django в генератор статических сайтов и сделать полноценный блог с пагинацией, сортировкой записей по тегам, подсветкой синтаксиса кода, контактной формой, подпиской на рассылку и поддержкой 20 различных тем оформления.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡2
Делаем анкету с различными виджетами, защищаем форму с помощью капчи, автоматически отправляем данные и вложенные файлы на email.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡2