Напишите функцию, которая принимает список чисел и возвращает второе наименьшее число. Если второго наименьшего числа не существует (например, в списке менее двух уникальных чисел), функция должна возвращать
None
.Пример:
print(second_smallest([4, 2, 1, 5, 3])) # 2
print(second_smallest([7, 7, 7])) # None
print(second_smallest([10])) # None
Решение задачи
def second_smallest(numbers):
unique_numbers = sorted(set(numbers))
return unique_numbers[1] if len(unique_numbers) > 1 else None
# Пример использования
print(second_smallest([4, 2, 1, 5, 3])) # 2
print(second_smallest([7, 7, 7])) # None
print(second_smallest([10])) # None
Please open Telegram to view this post
VIEW IN TELEGRAM
В статье рассматривается уникальная карточная игра с нулевой дисперсией, где стратегия Келли работает без риска. Разбирается механизм ставок, анализ игры и её математическая основа, описанная Томасом Кавером.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
• «Снова упала?» Как поднять самооценку и зачем мы сравниваем себя с другими, даже если от этого больно
• Из учителя в QA: мой путь в IT
• Рынок дата-инженеров и прогноз на 2025
• Лидерами рождаются или становятся? Откуда берутся управленцы и лидеры в IT
• Работать или переработать: как победить в себе заядлого удаленщика
Please open Telegram to view this post
VIEW IN TELEGRAM
Как находить персонажей на гравюрах без ручной разметки данных? В статье рассказывается, как сегментация изображений и контрастивное обучение помогают справиться с датасетом из 25 тысяч гравюр Британского музея.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Как обработать миллион запросов к API, совмещая асинхронный ввод-вывод с тяжелыми вычислениями? В статье разбираются подходы с использованием asyncio и ProcessPoolExecutor для масштабируемости и высокой производительности.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
any
и all
в Python и зачем они используются?any
и all
— это встроенные функции в Python, которые проверяют значения в итерируемом объекте.•
any
возвращает True
, если хотя бы одно значение истинное.•
all
возвращает True
, если все значения истинные.numbers = [0, 2, 4, 6]
# Проверка: есть ли хотя бы одно ненулевое число
print(any(numbers)) # True
# Проверка: все ли числа ненулевые
print(all(numbers)) # False
🗣️ В этом примере any возвращает True, так как есть ненулевые значения, а all — False, так как присутствует 0. Эти функции полезны для упрощения проверки условий в списках и других коллекциях.
Please open Telegram to view this post
VIEW IN TELEGRAM
Как добавить кучу настроек для администратора в свой проект на django без дополнительных сервисов feature-toggle и потом в них не потеряться.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Всем привет! Меня зовут Шубин Вадим, я Data Scientist в компании Raft Digital Solutions. В этой статье я хотел бы рассказать о нашем опыте с фейл-сабмитом в существующий опенсорс-проект Axolotl и о том, какие уроки из него мы извлекли. Но обо всём по порядку. Давайте начнем!
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
• Обвиваем YouTube змеем, или как смотреть и скачивать видео с YouTube без VPN на чистом Python-е. Часть 1
• Python: неочевидное и вероятное
• Пишем свой PyTorch на NumPy. Часть 1
• Polars vs Pandas: битва титанов. Кто кого?
• Telegram-бот-магазин на Python: пошаговый гайд с оплатой, каталогом и админкой (Aiogram 3 + SQLAlchemy 2)
Please open Telegram to view this post
VIEW IN TELEGRAM
В статье рассматриваются недостатки A/B тестирования, включая его временные и ресурсные затраты, а также случаи, когда тесты оказываются неэффективными. Обсуждается, как рационально подходить к выбору этого метода.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
UV — новый пакетный менеджер на Rust для Python. Быстрее Poetry, удобнее Pipenv, с контролем версий Python и современным CLI. Узнайте, как UV меняет подход к управлению зависимостями.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Разбираемся, как возраст и опыт меняют взгляд на код, почему после 40 программисты не устают от JS, а решают хаос архитектуры там, где джуны тонут в pull request'ах.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Data Scientist в области языковых моделей (Middle)
Middle Python developer - Разработчик
Python-разработчик (Junior/Middle)
Please open Telegram to view this post
VIEW IN TELEGRAM
Гайд по созданию графиков в Plotly с двумя осями Y и тремя типами данных. Показывает, как совместить разные шкалы, не превратив визуализацию в винегрет. Да, X-ось тоже не осталась без внимания.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Разбираемся, как воссоздать дух Windows 3.1 с помощью Python и Tkinter. Не ради ностальгии, а чтобы своими руками сделать простую оконную систему с винтажной душой и немного олдскула.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
В статье рассказывается, как в HiFi-стриминге «Звук» создали систему рекомендаций для аудиокниг. Разбираем подходы, алгоритмы и логику, лежащие в основе подбора похожих книг.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Напишите Python-скрипт, который принимает путь к директории и выводит список всех файлов в ней, включая файлы во вложенных папках. Результат должен быть представлен в виде полного пути к файлам.
Решение задачи
import os
import sys
def list_files(directory):
if not os.path.isdir(directory):
print(f"Ошибка: {directory} не является директориeй.")
return
for root, _, files in os.walk(directory):
for file in files:
print(os.path.join(root, file))
# Чтение пути из аргументов командной строки
if __name__ == "__main__":
if len(sys.argv) < 2:
print("Использование: python list_files.py <path_to_directory>")
else:
list_files(sys.argv[1])
Please open Telegram to view this post
VIEW IN TELEGRAM
Основы работы с Tkinter: изучаем популярную библиотеку для создания GUI-приложений на Python. В статье пошагово разберем, как разработать простое графическое приложение.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
dataclasses
в Python и зачем они нужны?dataclasses
— это модуль, добавленный в Python 3.7, который упрощает создание классов для хранения данных. Он автоматически генерирует методы, такие как __init__
, __repr__
, и __eq__
, на основе аннотаций типов.from dataclasses import dataclass
@dataclass
class Point:
x: int
y: int
point = Point(10, 20)
print(point) # Point(x=10, y=20)
print(point == Point(10, 20)) # True
🗣️ В этом примере класс Point автоматически получает методы для удобной работы с объектами, что экономит время и делает код чище.
Please open Telegram to view this post
VIEW IN TELEGRAM
В статье показывают, как метод Цеттелькастен помогает прокачать самообучение программированию. Объяснят разницу между обычными конспектами и структурированными заметками и зачем всё это вообще нужно.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Оценил задачу в 2 часа — а сидишь над ней уже третий день? Типичная история.
Please open Telegram to view this post
VIEW IN TELEGRAM