Быстрая сортировка
Быстрая сортировка (quicksort) — это один из наиболее известных и широко применяемых алгоритмов сортировки. Она основана на использовании стратегии "разделяй и властвуй".
В этом коде мы выбираем элемент в середине списка в качестве "опорного". Затем мы создаем три списка: один для элементов меньше опорного, один для элементов равных опорному, и один для элементов больше опорного.
Мы рекурсивно применяем быструю сортировку к списку элементов, которые меньше и больше опорного элемента. Это продолжается до тех пор, пока не останется список, который нужно сортировать. В конце, мы объединяем отсортированные списки вместе.
🔗 Python tricks
Быстрая сортировка (quicksort) — это один из наиболее известных и широко применяемых алгоритмов сортировки. Она основана на использовании стратегии "разделяй и властвуй".
В этом коде мы выбираем элемент в середине списка в качестве "опорного". Затем мы создаем три списка: один для элементов меньше опорного, один для элементов равных опорному, и один для элементов больше опорного.
Мы рекурсивно применяем быструю сортировку к списку элементов, которые меньше и больше опорного элемента. Это продолжается до тех пор, пока не останется список, который нужно сортировать. В конце, мы объединяем отсортированные списки вместе.
🔗 Python tricks
string.isdecimal
isdecimal() возвращает true, если все символы в строке являются десятичными символами. Если хотя бы один символ не является десятичным, возвращается False. Верхний и нижний индексы считаются цифровыми символами, а не десятичными. Если строка содержит эти символы (обычно написанные с использованием Юникода), isdecimal() возвращает False.
🔗 Python tricks
isdecimal() возвращает true, если все символы в строке являются десятичными символами. Если хотя бы один символ не является десятичным, возвращается False. Верхний и нижний индексы считаются цифровыми символами, а не десятичными. Если строка содержит эти символы (обычно написанные с использованием Юникода), isdecimal() возвращает False.
🔗 Python tricks
Атрибут context
Атрибут context — это специальный атрибут исключений в Python, который содержит ссылку на исключение, которое было вызвано перед текущим исключением. Этот атрибут используется при множественном вызове исключений, чтобы предоставить контекст для текущего исключения.
В коде на картинке функция g вызывает исключение ValueError. Функция f перехватывает это исключение и вызывает собственное исключение Exception.
🔗 Python tricks
Атрибут context — это специальный атрибут исключений в Python, который содержит ссылку на исключение, которое было вызвано перед текущим исключением. Этот атрибут используется при множественном вызове исключений, чтобы предоставить контекст для текущего исключения.
В коде на картинке функция g вызывает исключение ValueError. Функция f перехватывает это исключение и вызывает собственное исключение Exception.
🔗 Python tricks
Декораторы в Python: Способ разделения задач
Идея декораторов Python состоит в том, чтобы позволить разработчику добавлять новые функциональные возможности к существующему объекту без изменения его исходной логики.
Мы можем сами определить декораторов. А также есть множество замечательных встроенных декораторов, готовых к использованию.
Например, статические методы в классе Python не привязаны к экземпляру или классу. Они включены в класс просто потому, что они логически принадлежат ему.
🔗 Python tricks
Идея декораторов Python состоит в том, чтобы позволить разработчику добавлять новые функциональные возможности к существующему объекту без изменения его исходной логики.
Мы можем сами определить декораторов. А также есть множество замечательных встроенных декораторов, готовых к использованию.
Например, статические методы в классе Python не привязаны к экземпляру или классу. Они включены в класс просто потому, что они логически принадлежат ему.
🔗 Python tricks
Размещение вашего скрипта на Python на Ubuntu-инстансе
Мой любимый метод закачки скрипта на Python на инстанс Ubuntu — это использовать Git.
Если есть конфигурационные файлы, которые нужны на вашем Ubuntu-инстансе, и вы не хотите хранить их на github, для переноса пользуйтесь Amazon S3.
🔗 Python tricks
Мой любимый метод закачки скрипта на Python на инстанс Ubuntu — это использовать Git.
Если есть конфигурационные файлы, которые нужны на вашем Ubuntu-инстансе, и вы не хотите хранить их на github, для переноса пользуйтесь Amazon S3.
🔗 Python tricks
Функция islice()
islice() — это функция из модуля itertools, которая используется для создания итератора, возвращающего выбранные элементы из итерируемого объекта. Она похожа на срезы списков, но имеет некоторые отличия.
🔗 Python tricks
islice() — это функция из модуля itertools, которая используется для создания итератора, возвращающего выбранные элементы из итерируемого объекта. Она похожа на срезы списков, но имеет некоторые отличия.
🔗 Python tricks
Установка Python3.7 и PIP
Для установки Python и PIP я бы рекомендовал пользоваться веб-SSH через дашборд Lightsail.
А в папке репозитория выполните следующую команду. Она запустит код, приведённый ниже и установит Python3.7 вместе с PIP.
🔗 Python tricks
Для установки Python и PIP я бы рекомендовал пользоваться веб-SSH через дашборд Lightsail.
А в папке репозитория выполните следующую команду. Она запустит код, приведённый ниже и установит Python3.7 вместе с PIP.
🔗 Python tricks
Вычисляем время выполнения
Этот пример полезен, когда вам нужно знать, сколько времени требуется для выполнения программы или функции.
🔗 Python tricks
Этот пример полезен, когда вам нужно знать, сколько времени требуется для выполнения программы или функции.
🔗 Python tricks
Списковое включение (быстрый способ)
Списковое включение — самый эффективный способ итерации любого списка. Это итерирование однострочного списка с включением в него цикла. Посмотрите приведенный ниже пример кода, чтобы понять, как это работает.
🔗 Python tricks
Списковое включение — самый эффективный способ итерации любого списка. Это итерирование однострочного списка с включением в него цикла. Посмотрите приведенный ниже пример кода, чтобы понять, как это работает.
🔗 Python tricks
Перебираем все возможные 8 значные пароли состоящие из букв и цифр с помощью Python
В этом примере используется модуль
Обратите внимание, что перебор всех возможных 8-значных паролей может занять большое количество времени, особенно если количество символов в
🔗 Python tricks
В этом примере используется модуль
itertools
, который позволяет генерировать все возможные комбинации символов из списка characters
длиной password_length
. Затем перебираются все комбинации и выводятся на экран.Обратите внимание, что перебор всех возможных 8-значных паролей может занять большое количество времени, особенно если количество символов в
characters
большое. Будьте осторожны и убедитесь, что ваше намерение соответствует законам и этическим правилам.🔗 Python tricks
Соединение списка и множества в словарь
Для соединения списка и множества в словарь можно использовать встроенную функцию
Для создания словаря из списков и множеств нужно сначала объединить элементы в кортежи при помощи функции
🔗 Python tricks
Для соединения списка и множества в словарь можно использовать встроенную функцию
zip()
. Эта функция объединяет элементы нескольких последовательностей (списков
, множеств
, кортежей
и т.д.) в кортежи.Для создания словаря из списков и множеств нужно сначала объединить элементы в кортежи при помощи функции
zip()
, а затем создать словарь из этих кортежей при помощи функции dict()
.fruit_prices
будет содержать словарь {'apple': 1.20, 'banana': 0.80, 'orange': 1.50}
.🔗 Python tricks
Удаляем файл из папки на компьютере
Для удаления файла из папки на ПК в Python можно использовать модуль os.
Здесь сначала мы импортируем модуль os. Затем указываем полный путь к удаляемому файлу в переменной
Если файл существует, мы удаляем его с помощью функции
🔗 Python tricks
Для удаления файла из папки на ПК в Python можно использовать модуль os.
Здесь сначала мы импортируем модуль os. Затем указываем полный путь к удаляемому файлу в переменной
file_path
. С помощью функции os.path.exists()
проверяем, существует ли файл по указанному пути. Если файл существует, мы удаляем его с помощью функции
os.remove()
. В противном случае выводим информацию, что такой файл не найден.🔗 Python tricks
Cравнение 2 аудиосообщений
Для сравнения двух аудиосообщений в Python нужно использовать библиотеку для анализа звука, например, librosa или PyAudio.
Здесь мы загружаем два файла и вычисляем их характеристики MFCC (Mel Frequency Cepstral Coefficients), которые представляют собой набор коэффициентов, описывающих звуковое пространство. Затем мы вычисляем расстояние между характеристиками с помощью функции dtln из librosa.core. Результат будет выведен в консоль.
Обратите внимание, что для сравнения аудиосообщений нужно, чтобы они имели одинаковую продолжительность и были записаны в одинаковых условиях (например, громкость, обработка шума).
🔗 Python tricks
Для сравнения двух аудиосообщений в Python нужно использовать библиотеку для анализа звука, например, librosa или PyAudio.
Здесь мы загружаем два файла и вычисляем их характеристики MFCC (Mel Frequency Cepstral Coefficients), которые представляют собой набор коэффициентов, описывающих звуковое пространство. Затем мы вычисляем расстояние между характеристиками с помощью функции dtln из librosa.core. Результат будет выведен в консоль.
Обратите внимание, что для сравнения аудиосообщений нужно, чтобы они имели одинаковую продолжительность и были записаны в одинаковых условиях (например, громкость, обработка шума).
🔗 Python tricks
Узнаем сколько раз встречается каждая буква в предложении
Код представлен на картинке.
🔗 Python tricks
Код представлен на картинке.
🔗 Python tricks
string.rindex
Метод rindex() аналогичен методу rfind() для строк. Если внутри строки существует подстрока, возвращается наибольший индекс в строке, в которой найдена подстрока. Если подстрока не существует внутри строки, возникает исключение ValueError.
🔗 Python tricks
Метод rindex() аналогичен методу rfind() для строк. Если внутри строки существует подстрока, возвращается наибольший индекс в строке, в которой найдена подстрока. Если подстрока не существует внутри строки, возникает исключение ValueError.
🔗 Python tricks
Извлекаем имя из адреса электронной почты
Для извлечения имени из адреса электронной почты до символа ‘@‘ можно использовать регулярные выражения.
Это регулярное выражение начинает поиск с начала строки с помощью символа "^" и находит любую комбинацию строчных букв, цифр, дефисов, подчеркиваний, точек и знака минуса. Затем выражение находит символ "@" и останавливается.
🔗 Python tricks
Для извлечения имени из адреса электронной почты до символа ‘@‘ можно использовать регулярные выражения.
Это регулярное выражение начинает поиск с начала строки с помощью символа "^" и находит любую комбинацию строчных букв, цифр, дефисов, подчеркиваний, точек и знака минуса. Затем выражение находит символ "@" и останавливается.
🔗 Python tricks
Matplotlib: Круговые диаграммы
Чтобы добавить список пояснений для каждого сегмента, используй функцию legend().
Чтобы добавить заголовок к легенде, добавь параметр title в функцию legend.
На картинке продемонстрирована легенда с заголовком и списком пояснений.
🔗 Python tricks
Чтобы добавить список пояснений для каждого сегмента, используй функцию legend().
import matplotlib.pyplot as plt
import numpy as np
y = np.array([35, 25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y, labels = mylabels)
plt.legend()
plt.show()
Чтобы добавить заголовок к легенде, добавь параметр title в функцию legend.
y = np.array([35, 25, 25, 15])
mylabels = ["Apples", "Bananas", "Cherries", "Dates"]
plt.pie(y, labels = mylabels)
plt.legend(title = "Four Fruits:")
plt.show()
На картинке продемонстрирована легенда с заголовком и списком пояснений.
🔗 Python tricks
Установка библиотек Python
Следующим шагом установите питоновские библиотеки praw и pandas. Запустите серийный файл python_libraries.sh.
Praw — это враппер для API Python reddit.
Pandas — для манипуляций с данными и их анализа.
🔗 Python tricks
Следующим шагом установите питоновские библиотеки praw и pandas. Запустите серийный файл python_libraries.sh.
Praw — это враппер для API Python reddit.
Pandas — для манипуляций с данными и их анализа.
🔗 Python tricks
Погрузитесь в мир Python с нашим бесплатным курсом!
🎓 Включено 45 уроков, 56 упражнений в тренажере и 163 проверочных теста. Узнаете, как создавать программы, работать с условиями и функциями.
Что вы освоите:
— Составление программ из нескольких модулей.
— Анализ ошибок в коде с использованием отладочной печати.
📚 Курс охватывает основы Python: синтаксис, условия, циклы, типы данных и библиотеки. Практика на каждом шаге поможет вам уверенно использовать язык.
Начните свое обучение с бесплатного базового курса Python и вы сможете создавать несложные программы, а так же анализировать ошибки в коде!
🎓 Включено 45 уроков, 56 упражнений в тренажере и 163 проверочных теста. Узнаете, как создавать программы, работать с условиями и функциями.
Что вы освоите:
— Составление программ из нескольких модулей.
— Анализ ошибок в коде с использованием отладочной печати.
📚 Курс охватывает основы Python: синтаксис, условия, циклы, типы данных и библиотеки. Практика на каждом шаге поможет вам уверенно использовать язык.
Начните свое обучение с бесплатного базового курса Python и вы сможете создавать несложные программы, а так же анализировать ошибки в коде!
Списковое включение: Создайте список в одной строке кода
Python известен своей лаконичностью, которая в значительной степени объясняется его хорошо продуманным синтаксисом.
Со списковым включением мы можем поместить циклы for и условия if в одну строку кода для создания списка на Python:
🔗 Python tricks
Python известен своей лаконичностью, которая в значительной степени объясняется его хорошо продуманным синтаксисом.
Со списковым включением мы можем поместить циклы for и условия if в одну строку кода для создания списка на Python:
🔗 Python tricks