Синтаксис append() в Python
В этом примере:
1 Создаётся список
2 Метод
3 Вывод
🔗 Python tricks
В этом примере:
1 Создаётся список
my_list
с элементами 1, 2, 3.2 Метод
append()
добавляет элемент 4 в конец списка.3 Вывод
my_list
показывает, что новый элемент успешно добавлен в конец списка.🔗 Python tricks
Напишите функцию, которая принимает на вход список словарей, представляющих собой записи о студентах. Каждый словарь содержит ключи 'name', 'age' и 'grade'. Функция должна возвращать средний возраст студентов и среднюю оценку. Напишите код и объясните, как бы вы обработали случаи, когда в словарях отсутствуют ключи или значения не являются числами.
Объяснение:
В этой функции мы проходим по списку словарей, проверяем наличие ключей 'name', 'age' и 'grade' и их типы. Если данные валидны, добавляем их к общей сумме, чтобы затем посчитать средние значения.
🔗 Python tricks
Объяснение:
В этой функции мы проходим по списку словарей, проверяем наличие ключей 'name', 'age' и 'grade' и их типы. Если данные валидны, добавляем их к общей сумме, чтобы затем посчитать средние значения.
🔗 Python tricks
Объясните, что делает данная функция (первая картинка), оптимизируйте ее, и напишите тесты для проверки ее корректности.
Что делает функция:
Данная функция
Оптимизация кода:
Мы можем использовать list comprehension для более компактной записи этой функции:
Также, если вам необходимо, чтобы функция работала для любого итерируемого объекта, вы можете добавить проверку на четность элемента и заменить на использование генератора:
Тестирование:
Теперь напишем тесты для проверки корректности функции. Мы можем использовать библиотеку
🔗 Python tricks
Что делает функция:
Данная функция
some_function
принимает список чисел input_list
, проходится по каждому элементу в списке, проверяет, является ли элемент четным числом, и если да, то добавляет квадрат этого числа в новый список result
.Оптимизация кода:
Мы можем использовать list comprehension для более компактной записи этой функции:
def optimized_function(input_list):
return [item ** 2 for item in input_list if item % 2 == 0]
Также, если вам необходимо, чтобы функция работала для любого итерируемого объекта, вы можете добавить проверку на четность элемента и заменить на использование генератора:
def general_function(iterable):
return (item ** 2 for item in iterable if item % 2 == 0)
Тестирование:
Теперь напишем тесты для проверки корректности функции. Мы можем использовать библиотеку
unittest
для этого (вторая картинка).🔗 Python tricks
💻 Определяем ip адрес своего компьютера
Этот код использует библиотеку requests для отправки HTTP-запроса к веб-сервису ipify, который предоставляет API для определения публичного IP-адреса пользователя. Код написан в форме функции get_public_ip, что делает его удобным для повторного использования.
Использование блока try-except обеспечивает обработку исключений, которые могут возникнуть при запросе (например, проблемы с подключением к интернету). Если запрос успешен, функция возвращает IP-адрес, иначе возвращает сообщение об ошибке.
🔗 Python tricks
Этот код использует библиотеку requests для отправки HTTP-запроса к веб-сервису ipify, который предоставляет API для определения публичного IP-адреса пользователя. Код написан в форме функции get_public_ip, что делает его удобным для повторного использования.
Использование блока try-except обеспечивает обработку исключений, которые могут возникнуть при запросе (например, проблемы с подключением к интернету). Если запрос успешен, функция возвращает IP-адрес, иначе возвращает сообщение об ошибке.
🔗 Python tricks
Преобразование изменяемых данных в неизменяемые
Изменяемые данные (например, словари или списки) — это структуры, к которым могут быть добавлены новые значения.
Неизменяемые данные, в противоположность изменяемым, после создания остаются неизменными. Посмотрите, как можно преобразовать изменяемый тип данных в неизменяемый.
🔗 Python tricks
Изменяемые данные (например, словари или списки) — это структуры, к которым могут быть добавлены новые значения.
Неизменяемые данные, в противоположность изменяемым, после создания остаются неизменными. Посмотрите, как можно преобразовать изменяемый тип данных в неизменяемый.
🔗 Python tricks
Применение функции ко всем элементам в списке
Этот прием полезен в тех случаях, когда нужно применить функцию ко всем элементам списка, а не к каждому отдельно.
🔗 Python tricks
Этот прием полезен в тех случаях, когда нужно применить функцию ко всем элементам списка, а не к каждому отдельно.
🔗 Python tricks
Snowballstemmer
Библиотека
Эта библиотека реализует алгоритм Портера, который является одним из наиболее известных алгоритмов стемминга.
*Стемминг применяется в поисковых системах для расширения поискового запроса пользователя, является частью процесса нормализации текста.
🔗 Python tricks
Библиотека
Snowballstemmer
предоставляет функциональность стемминга, то есть преобразования слов в их базовую форму. Эта библиотека реализует алгоритм Портера, который является одним из наиболее известных алгоритмов стемминга.
Snowballstemmer
поддерживает алгоритмы стемминга для 15 языков, включая русский.*Стемминг применяется в поисковых системах для расширения поискового запроса пользователя, является частью процесса нормализации текста.
🔗 Python tricks
IceCream
В этом примере кода вывод ic| указывает на то, что это вывод от IceCream, а result: 6 — имя переменной и ее значение.
IceCream может быть использован в любом месте, где требуется отладка кода: веб-разработка, научные вычисления, анализ данных и т.д.
🔗 Python tricks
IceCream
— это библиотека, которая предоставляет простой и эффективный способ отладки кода. Вместо того чтобы использовать функцию print() для отладки, вы можете использовать функцию ic() из библиотеки IceCream, которая позволяет вам инспектировать переменные, выражения и выполнение программы с помощью одного простого вызова функции.В этом примере кода вывод ic| указывает на то, что это вывод от IceCream, а result: 6 — имя переменной и ее значение.
IceCream может быть использован в любом месте, где требуется отладка кода: веб-разработка, научные вычисления, анализ данных и т.д.
🔗 Python tricks
Добавление новых элементов в список
Как мы знаем, метод
При этом длина списка увеличивается на 1, и новый элемент занимает позицию с индексом, который на единицу больше, чем индекс последнего элемента до добавления.
🔗 Python tricks
Как мы знаем, метод
append()
добавляет новый элемент в конец списка.При этом длина списка увеличивается на 1, и новый элемент занимает позицию с индексом, который на единицу больше, чем индекс последнего элемента до добавления.
🔗 Python tricks
Создание списка через цикл с использованием append()
С основой разобрались. Теперь посмотрим, как создать обновление списка с несколькими значениями. Не использовать же нам сотню функций для поочередного добавления элементов, в конце концов. Используем старый-добрый цикл.
В примере ниже на каждой итерации цикла переменная
🔗 Python tricks
С основой разобрались. Теперь посмотрим, как создать обновление списка с несколькими значениями. Не использовать же нам сотню функций для поочередного добавления элементов, в конце концов. Используем старый-добрый цикл.
В примере ниже на каждой итерации цикла переменная
i
содержит текущее значение из диапазона range(5)
, то есть значения от 0 до 4 (включительно).🔗 Python tricks
Тернарный оператор: Поместите If и Else в одну строку кода
Многие языки программирования имеют тернарные операторы. Синтаксис Python для этого просто помещает if и else в одну строку.
Если мы реализуем ту же логику, что и выше, без тернарного оператора, потребуется несколько строк кода.
🔗 Python tricks
Многие языки программирования имеют тернарные операторы. Синтаксис Python для этого просто помещает if и else в одну строку.
Если мы реализуем ту же логику, что и выше, без тернарного оператора, потребуется несколько строк кода.
🔗 Python tricks
string.find
Метод find() возвращает индекс первого вхождения подстроки (если она найдена). Если не найдена, возвращается -1. При желании ты можешь задать, откуда нужно начать поиск и до какого индекса.
🔗 Python tricks
Метод find() возвращает индекс первого вхождения подстроки (если она найдена). Если не найдена, возвращается -1. При желании ты можешь задать, откуда нужно начать поиск и до какого индекса.
🔗 Python tricks
Лямбда-функции для определения небольших анонимных функций
Лямбда-функция, называемая анонимной функцией, представляет собой метод, позволяющий легко определить небольшую функцию в Python, чтобы сделать ваш код аккуратнее и короче.
Распространённым применением лямбда-функций является их использование для определения метода сравнения для встроенной функции sort()
🔗 Python tricks
Лямбда-функция, называемая анонимной функцией, представляет собой метод, позволяющий легко определить небольшую функцию в Python, чтобы сделать ваш код аккуратнее и короче.
Распространённым применением лямбда-функций является их использование для определения метода сравнения для встроенной функции sort()
🔗 Python tricks
Контекстный менеджер: Автоматическое закрытие ресурсов
Как мы знаем, после того, как файл был открыт и обработан, важно быстро закрыть его, чтобы освободить ресурсы памяти. Пренебрежение этим может привести к утечке памяти или даже к сбою нашей системы.
Как показано выше, оператор “with” является ключевым для контекстных менеджеров Python. Пока мы открываем файл через него и обрабатываем файл под ним, файл будет автоматически закрыт после обработки.
🔗 Python tricks
Как мы знаем, после того, как файл был открыт и обработан, важно быстро закрыть его, чтобы освободить ресурсы памяти. Пренебрежение этим может привести к утечке памяти или даже к сбою нашей системы.
Как показано выше, оператор “with” является ключевым для контекстных менеджеров Python. Пока мы открываем файл через него и обрабатываем файл под ним, файл будет автоматически закрыт после обработки.
🔗 Python tricks
Объясните, что такое обработка исключений в Python, и предоставьте пример кода, демонстрирующий использование блока try-except.
Обработка исключений в Python позволяет программисту обрабатывать и управлять ошибками в коде. Блок
Блок
Блок
В примере на картинке в функции
🔗 Python tricks
Обработка исключений в Python позволяет программисту обрабатывать и управлять ошибками в коде. Блок
try
содержит код, который может вызвать исключение. Если исключение происходит, выполнение кода переходит к блоку except
, который содержит обработчики конкретных типов исключений.Блок
else
выполняется, если в блоке try
не возникло исключение.Блок
finally
выполняется всегда, независимо от того, произошло исключение или нет. Этот блок используется, например, для освобождения ресурсов.В примере на картинке в функции
divide_numbers
представлен пример деления двух чисел с использованием блока try-except
. В случае деления на ноль выводится сообщение об ошибке. Если переданы нечисловые значения, программа сообщает об ошибке типа. В блоке else выводится сообщение об успешном выполнении операции, а в блоке finally
выводится сообщение, которое всегда выполняется.🔗 Python tricks
У вас есть список словарей, представляющих информацию о книгах. Каждый словарь содержит поля «название» (title), «автор» (author) и «год выпуска» (year). Напишите функцию на Python, которая принимает такой список книг и возвращает словарь, в котором ключами являются года выпуска, а значениями — списки книг, выпущенных в этот год. Книги в каждом списке должны быть упорядочены по алфавиту по названию.
Решение:
1. Используем , чтобы автоматически создавать пустой список для каждого года.
2. Книги сортируем по названию перед группировкой, чтобы списки книг в каждом году были упорядочены по алфавиту.
3. Проходим по отсортированным книгам и добавляем их в соответствующие списки годов в словаре.
🔗 Python tricks
Решение:
defaultdict(list)
2. Книги сортируем по названию перед группировкой, чтобы списки книг в каждом году были упорядочены по алфавиту.
3. Проходим по отсортированным книгам и добавляем их в соответствующие списки годов в словаре.
🔗 Python tricks
Как получить размер папки с помощью Python?
Чтобы получить размер каталога, пользователь должен пройти по всей папке и добавить размер каждого файла, присутствующего в этой папке, и покажет общий размер папки.
Другие способы решить данную задачу можно найти здесь.
🔗 Python tricks
Чтобы получить размер каталога, пользователь должен пройти по всей папке и добавить размер каждого файла, присутствующего в этой папке, и покажет общий размер папки.
Другие способы решить данную задачу можно найти здесь.
🔗 Python tricks
NetworkX
NetworkX — это библиотека Python для анализа сложных сетей. Она предоставляет структуры данных для работы с графами (сетями) и реализует множество алгоритмов для анализа и визуализации сетевых данных.
Она может использоваться в различных областях, таких как социальные, биологические, транспортные, компьютерные сети и многих других.
🔗 Python tricks
NetworkX — это библиотека Python для анализа сложных сетей. Она предоставляет структуры данных для работы с графами (сетями) и реализует множество алгоритмов для анализа и визуализации сетевых данных.
Она может использоваться в различных областях, таких как социальные, биологические, транспортные, компьютерные сети и многих других.
🔗 Python tricks
Переводим текст с английского на русский язык и преобразуем его в голосовое сообщение
Для перевода текста с английского на русский и преобразования его в голосовое сообщение, вы можете использовать библиотеки googletrans для перевода и gTTS (Google Text-to-Speech) для синтеза речи.
pip install googletrans==4.0.0-rc1
pip install gtts
🔗 Python tricks
Для перевода текста с английского на русский и преобразования его в голосовое сообщение, вы можете использовать библиотеки googletrans для перевода и gTTS (Google Text-to-Speech) для синтеза речи.
pip install googletrans==4.0.0-rc1
pip install gtts
🔗 Python tricks