Отображение календаря
Python имеет встроенный модуль
В программе мы импортируем модуль
Python имеет встроенный модуль
calendar
для работы с задачами, связанными с датой. В этом примере вы научитесь отображать календарь на заданную дату.В программе мы импортируем модуль
calendar
. Встроенная функция month()
внутри модуля принимает год и месяц и отображает календарь для данного месяца года.Информация о доменном имени с помощью Python
Доменное имя или домен — это имя сайта. Вы вводите его в адресной строке браузера, когда хотите перейти на сайт.
В этом посте мы будем использовать библиотеку
Перед запуском кода пропишите данную команду в консоли:
Доменное имя или домен — это имя сайта. Вы вводите его в адресной строке браузера, когда хотите перейти на сайт.
В этом посте мы будем использовать библиотеку
whois
для получения различной информации о домене, такой как: имя домена, дата создания, дата окончания, электронная почта, индекс, адрес, город страна и многое другое.Перед запуском кода пропишите данную команду в консоли:
pip install python-whois
Cowsay - прикольная маленькая библиотека, с помощью которой вы сможете нарисовать в консоль 🐲 дракона, 🐮 корову, 🦖 динозавра, 🐈 кошку, и других персонажей.
Перед запуском кода установите пакет:
Перед запуском кода установите пакет:
sudo pip install cowsayТо что на скрине, сделано с помощью 2 строчек кода👇
import cowsay
print(cowsay.get_output_string('trex', 'тут твой текст'))
Определение лиц
Определение лиц используется в соцсетях, фото-редакторах, видеочатах, умной капче, time tracking программах — можно придумать еще множество применений этой функции.
И сейчас мы с вами напишем такую же программу.
Перед запуском кода установите пакет:
https://github.com/opencv/opencv/blob/master/data/haarcascades/haarcascade_frontalface_default.xml
#opencv
Определение лиц используется в соцсетях, фото-редакторах, видеочатах, умной капче, time tracking программах — можно придумать еще множество применений этой функции.
И сейчас мы с вами напишем такую же программу.
Перед запуском кода установите пакет:
pip install opencv-pythonИ загрузите каскадный файл из GitHub:
https://github.com/opencv/opencv/blob/master/data/haarcascades/haarcascade_frontalface_default.xml
#opencv
Сегодня, с помощью двух строчек кода, мы с вами напишем прикольную, но оооочень простую программу, а именно🥁 Музыкальный Плеер.
Вот вам код:
Вот вам код:
from playsound import playsound
playsound('YourSound.mp3')
Но перед запуском установите пакет:pip install playsound
Наш генератор случайных историй будет снабжен несколькими списками фраз, и каждый раз, когда мы запускаем нашу программу, предложение будет формироваться случайным образом путем выбора рандомных фраз из наших списков.
Форматировать текст мы будем с помощью f-strings
Обязательно пишите в комментариях какая история у вас получилась.
Форматировать текст мы будем с помощью f-strings
Обязательно пишите в комментариях какая история у вас получилась.
Оператор "морж"
В своё время Python 3.8 представил оператор присвоения с двоеточием
Все мы знаем, как присвоить значение переменной:
И вот если использовать наш новый оператор "морж", то предыдущий код мы можем выполнить в одной строке:
✅Операторы “морж” можно использовать везде — от циклов до функций генераторов списка или операторов if для обходного присваивания переменных.
В своё время Python 3.8 представил оператор присвоения с двоеточием
:=
, аналогичный оператору присвоения =
. Все мы знаем, как присвоить значение переменной:
num = 15
И вывести значение с помощью функции print
:print(num) # 15
Оператор "морж" даёт возможность присвоить переменные в выражении, включая переменные, которых еще не существует.И вот если использовать наш новый оператор "морж", то предыдущий код мы можем выполнить в одной строке:
print(num := 15) # 15
✅Использование этого оператора позволяет ускорить и сократить код, а в некоторых случаях способен значительно ускорить обработку больших данных.✅Операторы “морж” можно использовать везде — от циклов до функций генераторов списка или операторов if для обходного присваивания переменных.
Тепловая карта — графическое представление данных, где индивидуальные значения в таблице отображаются при помощи цвета.
Теперь поговорим о коде. Библиотеку
#matplotlib #pandas #seaborn #numpy
Теперь поговорим о коде. Библиотеку
seaborn
, в отличие от matplotlib
, можно использовать для построения более сложных диаграмм, в которые входит большое количество компонентов, таких как цвета, графики и переменные. matplotlib
используется для отображения графика, numpy
— для генерации данных и pandas
— для их обработки! Построение диаграмм является лишь одной простой функцией seaborn
. Также в этой библиотеке можно найти функцию colour mapping
(преобразование цвета).#matplotlib #pandas #seaborn #numpy
Отладка
Отладка относится к числу навыков, овладев которыми, вы значительно продвинете свои навыки отслеживания багов в коде. Большинство новичков пренебрежительно относятся к важности отладчика Python (
Запуск из командной строки (первый способ)
Вы можете запустить скрипт из командной строки вместе с отладчиком:
Команды (буквы которые вы вводите в консоли для работы отладчика)
🔸
🔸
🔸
🔸
🔸
#отладка #pdb
Отладка относится к числу навыков, овладев которыми, вы значительно продвинете свои навыки отслеживания багов в коде. Большинство новичков пренебрежительно относятся к важности отладчика Python (
pdb
). В данном посте мы расскажем лишь об одном способе отладки. Про второй в следующем посте.Запуск из командной строки (первый способ)
Вы можете запустить скрипт из командной строки вместе с отладчиком:
python3 -m pdb my_script.py
Отладчик приостановит выполнение программы на первой найденной им инструкции. Это удобно для коротких скриптов. Вы можете проверить значения переменных и продолжить выполнение программы построчно.Команды (буквы которые вы вводите в консоли для работы отладчика)
🔸
c
: продолжить выполнение программы🔸
w
: отобразить окружение текущей исполняемой инструкции🔸
a
: отобразить список аргументов текущей функции🔸
s
: исполнить текущую строчку кода и остановиться по возможности🔸
n
: продолжить исполнение программы пока не будет достигнута следующая строка текущей функции или пока функция не завершит свою работу.#отладка #pdb
Вычисление Города, Региона, Страны по IP 🤔
В Python есть библиотека ip2geotools, с ее помощью можно узнать данные местоположения.
Перед запуском кода установите библиотеку:
В Python есть библиотека ip2geotools, с ее помощью можно узнать данные местоположения.
Перед запуском кода установите библиотеку:
pip install ip2geotoolsКод:
from ip2geotools.databases.noncommercial import DbIpCity#ip2geotools
ip = 'сюда IP'
response = DbIpCity.get(ip, api_key='free')
print(f'Город - {response.city}\n'
f'Регион - {response.region}\n'
f'Страна - {response.country}\n'
f'Долгота - {response.latitude}\n'
f'Широта - {response.longitude}')
Продолжаем тему отладки
Запуск из скрипта (второй способ)
Вы можете задать контрольные точки в коде, что позволит изучить значения переменных и другие параметры в конкретный момент выполнения программы. Это возможно при помощи метода
🔸
🔸
🔸
🔸
🔸
#отладка #pdb
Запуск из скрипта (второй способ)
Вы можете задать контрольные точки в коде, что позволит изучить значения переменных и другие параметры в конкретный момент выполнения программы. Это возможно при помощи метода
pdb.set_trace()
. Вот пример:import pdb
def make_prog():
pdb.set_trace()
return "Python nation"
print(make_prog())
Попробуйте запустить этот код. Отладчик откроется сразу после запуска скрипта. Теперь пришло время вспомнить команды отладчика.🔸
c
: продолжить выполнение программы🔸
w
: отобразить окружение текущей исполняемой инструкции🔸
a
: отобразить список аргументов текущей функции🔸
s
: исполнить текущую строчку кода и остановиться по возможности🔸
n
: продолжить исполнение программы пока не будет достигнута следующая строка текущей функции или пока функция не завершит свою работу.#отладка #pdb
Определение страны и оператора по номеру телефона
phonenumbers - один из модулей, который предоставляет множество функций, таких как предоставление базовой информации о номере телефона, проверка номера телефона и т. д.
В этом посте мы рассмотрели лишь парочку функций.
Перед запуском установите пакет:
phonenumbers - один из модулей, который предоставляет множество функций, таких как предоставление базовой информации о номере телефона, проверка номера телефона и т. д.
В этом посте мы рассмотрели лишь парочку функций.
Перед запуском установите пакет:
pip install phonenumbers
#phonenumbersСканирование QR-кода с помощью камеры
Несколькими постами раньше мы научились генерировать QR-код.
Теперь пришло время научится считывать его.
Перед запуском кода установите пакет:
#opencv
Несколькими постами раньше мы научились генерировать QR-код.
Теперь пришло время научится считывать его.
Перед запуском кода установите пакет:
pip3 install opencv-python
После того как ваш программный код начнет "скрипеть колесами" включится веб-камера и вы, в свою очередь, поднесите QR-код к камере которая будет считывать информацию.#opencv
Reduce весьма полезная функция для выполнения вычислений на списке и возвращения единственного результата. Она сворачивает список, применяя полученную в качестве аргумента функцию по очереди к последовательным парам элементов.
Например, если мы хотим посчитать произведение всех элементов списка чисел. Пример на картинке👆
#reduce
Например, если мы хотим посчитать произведение всех элементов списка чисел. Пример на картинке👆
#reduce
FuzzyWuzzy - топовая библиотека для нечёткого сравнения строк.
Например, если сравнить две строчки
Также в библиотеке есть частичное сравнение и сравнение слов без учета их позиций в предложении.
Перед запуском кода установите пакет:
Например, если сравнить две строчки
hello
и hell
, то окажется что они на 89% похожи.Также в библиотеке есть частичное сравнение и сравнение слов без учета их позиций в предложении.
Перед запуском кода установите пакет:
pip install fuzzywuzzy[speedup]
Метод
Часто разработчики используют квадратные скобки, чтобы получить значение из словаря. Но когда нужно получить значение из словаря безопасным способом рекомендуется использовать метод
При попытке использования синтаксиса с квадратными скобками для выборки по ключу, отсутствующему в словаре, мы получим ошибку
Чтобы избежать подобной ситуации, используется метод
Также вместо
#get() #словарь #None #KeyError
get()
для словаряЧасто разработчики используют квадратные скобки, чтобы получить значение из словаря. Но когда нужно получить значение из словаря безопасным способом рекомендуется использовать метод
get()
.При попытке использования синтаксиса с квадратными скобками для выборки по ключу, отсутствующему в словаре, мы получим ошибку
KeyError
.Чтобы избежать подобной ситуации, используется метод
get()
. Этот метод возвращает значение для данного ключа, если оно есть в словаре. Если нет, то он вернет None
(если get()
используется только с одним аргументом).Также вместо
None
можно получить своё значение указав его вторым аргументом в методе get()
.#get() #словарь #None #KeyError
Один из лучших способов ускорения кода — это встроенные функции
Почему они такие быстрые? Потому что реализованы на языке
Поэтому в целях более быстрого выполнения кода стоит отдать предпочтение им, а не писать функции вручную.
Python
. Их нужно использовать при любой возможности. Эти встроенные функции хорошо протестированы и оптимизированы.Почему они такие быстрые? Потому что реализованы на языке
C
. Это относится к таким встроенным функциям Python
, как min
, max
, all
, map
и другим.Поэтому в целях более быстрого выполнения кода стоит отдать предпочтение им, а не писать функции вручную.
Многопроцессорная обработка
Если ваш компьютер выполняет более одного процесса, тогда присмотритесь к многопроцессорной обработке в Python.
Она разрешает распараллеливание в коде. Многопроцессорная обработка весьма затратна, поскольку вам придется инициировать новые процессы, обращаться к общей памяти и т.д., поэтому пользуйтесь ей только для большого количества разделяемых данных. Для небольших объемов данных многопроцессорная обработка не всегда оправдана.
Если ваш компьютер выполняет более одного процесса, тогда присмотритесь к многопроцессорной обработке в Python.
Она разрешает распараллеливание в коде. Многопроцессорная обработка весьма затратна, поскольку вам придется инициировать новые процессы, обращаться к общей памяти и т.д., поэтому пользуйтесь ей только для большого количества разделяемых данных. Для небольших объемов данных многопроцессорная обработка не всегда оправдана.