Для получения координат в коде используется библиотека
geopy
.pip install geopy
from geopy.geocoders import Nominatim
# Создаем объект класса Nominatim
geolocator = Nominatim(user_agent="my_app")
# Список городов
addresses = ["Уфа", "Нижневартовск", "Нижний Новгород"]
# Пустой список для хранения координат
coordinates = []
# Проходимся по каждому городу
for address in addresses:
# Получаем координаты
location = geolocator.geocode(address)
if location:
# Извлекаем широту и долготу
latitude = location.latitude
longitude = location.longitude
# Добавляем координаты в список
coordinates.append((latitude, longitude))
# Выводим координаты городов
print("Координаты городов:")
for i, coordinate in enumerate(coordinates):
print(f"{i+1}. Координаты города '{addresses[i]}': {coordinate}")
# Вывод:
# Координаты городов:
# 1. Координаты города 'Уфа': (54.7261409, 55.947499)
# 2. Координаты города 'Нижневартовск': (60.9391866, 76.55117870683605)
# 3. Координаты города 'Нижний Новгород': (56.3264816, 44.0051395)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍7❤🔥2
Библиотека
tabulate
даёт возможность создавать красиво отформатированные таблицы данных.Позволяет выводить данные в виде таблицы с различными стилями форматирования и настраиваемыми заголовками.
Основные варианты использования библиотеки:
pip install tabulate
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥4👍3😁1🤔1
Функция
getAllTitles()
из модуля pygetwindow
возвращает список заголовков всех активных окон в Windows.Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍3
Справочник Программиста
Для создания скриншота в коде используется модуль
PyAutoGUI
, а для получения окна и его размеров - PyGetWindow
.Изображение данного поста - итоговый скриншот.
pip install PyAutoGUI
PyGetWindow
import pygetwindow as gw
import pyautogui
# Получаем окно с указанным заголовком
window = gw.getWindowsWithTitle("Lesson – main.py")[0]
# Получаем позицию и размеры окна
x, y, width, height = window.left, window.top, window.width, window.height
# Создаём скриншот указанной области
screenshot = pyautogui.screenshot(region=(x, y, width, height))
# Сохраняем скриншот
screenshot.save("screenshot.png")
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7👍5🔥1
Библиотека python-rucaptcha в Python
Библиотека
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
python-rucaptcha
предназначена для работы с сервисами RuCaptcha и 2Captcha API для решения капчи.pip install python-rucaptcha
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5👍2
Библиотека
pymorphy3
- это морфологический анализатор для русского языка. Предоставляет возможность определения частей речи, склонения и других морфологических характеристик слова.Основные особенности библиотеки:
pip install pymorphy3
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍6❤🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Для получения всех файлов с определёнными расширениями в указанной директории в коде используется стандартная библиотека
glob
.import glob
# Определение функции для поиска файлов в указанной директории с указанными типами файлов
def search_files(directory, types):
files_grabbed = []
for files in types:
files_grabbed.extend(glob.glob(f'{directory}/{files}'))
return files_grabbed
# Вызов функции search_files() для поиска файлов с расширениями '*.png', '*.jpg' и *.jpeg в директории 'images'
files_grabbed = search_files('images', ('*.png', '*.jpg', '*.jpeg'))
# Вывод списка найденных файлов
print(files_grabbed)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍8❤🔥2🎉1
Библиотека
Numba
позволяет ускорить выполнение кода путем компиляции его в машинный код.Предоставляет возможность использовать декораторы и функции для создания компилируемых функций, которые выполняются намного быстрее, чем обычный интерпретируемый код Python.
Основные особенности библиотеки:
NumPy
: интегрируется с библиотекой NumPy
, что позволяет использовать ее функции и операции с массивами в компилируемых функциях.pip install numba
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍3❤🔥2
Для работы с координатами в коде используется библиотека
geopy
.pip install geopy
from geopy.distance import distance
from geopy.point import Point
# Список словарей, представляющих разные местоположения
locations = [
{"name": "Рим", "coordinates": (41.902685, 12.496085)},
{"name": "Флоренция", "coordinates": (43.779768, 11.265750)},
{"name": "Римини", "coordinates": (44.054351, 12.571060)},
]
# Установка текущих координат
current_location = (42.958833, 12.709767) # Координаты города "Фолиньо"
# Создание пустого списка для хранения расстояний
distances = []
# Итерация по каждому местоположению в списке locations
for location in locations:
# Создание объекта Point, используя координаты текущего местоположения
point = Point(location["coordinates"])
# Вычисление расстояния между текущим местоположением и каждым местоположением в списке
distances.append((location["name"], distance(point, current_location).kilometers))
# Сортировка списка расстояний по второму элементу каждого кортежа (расстояния)
sorted_distances = sorted(distances, key=lambda x: x[1])
# Вывод имени и расстояния до ближайшего города
print(f"Ближайший город: {sorted_distances[0][0]}, Расстояние: {sorted_distances[0][1]:.2f} км")
# Вывод: Ближайший город: Рим, Расстояние: 118.63 км
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7👍5🤨1😎1
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Doitlive в Python
Библиотека
Позволяет записывать и воспроизводить команды командной строки с возможностью добавления задержек, комментариев и других элементов для создания динамичных и увлекательных демонстраций.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Doitlive
предназначена для создания интерактивных демонстраций (презентаций) командной строки.Позволяет записывать и воспроизводить команды командной строки с возможностью добавления задержек, комментариев и других элементов для создания динамичных и увлекательных демонстраций.
pip install doitlive
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5🔥3👍2
Библиотека
watchdog
предоставляет возможность отслеживать события файловой системы, такие как создание, изменение и удаление файлов и директорий.Является кросс-платформенной и поддерживает различные операционные системы, включая Linux, macOS и Windows.
pip install watchdog
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥4❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для создания слайд-шоу из изображений на Python 🖼
Для получения всех изображений из директории в коде используется стандартная библиотека
➡️ Установка moviepy:
➡️ Справочник Программиста. Подписаться
Для получения всех изображений из директории в коде используется стандартная библиотека
glob
, а для создания слайд-шоу - moviepy
.pip install moviepy
from moviepy.editor import *
import glob
# Определение функции для поиска файлов в указанной директории с указанными типами файлов
def search_files(directory, types):
files_grabbed = []
for files in types:
files_grabbed.extend(glob.glob(f'{directory}/{files}'))
return files_grabbed
# Вызов функции search_files() для поиска файлов с расширениями '*.png', '*.jpg' и *.jpeg в директории 'images'
image_files = search_files('images', ('*.png', '*.jpg', '*.jpeg'))
# Создаем пустой список для сохранения видео-клипов
video_clips = []
# Проходим по каждому изображению и создаем видео-клип для каждого
for image_file in image_files:
# Загружаем изображение
image = ImageClip(image_file)
resized_image = image.resize((1024, 1024))
# Создаем видео-клип с изображением и заданной длительностью
video_clip = image.set_duration(5)
# Добавляем видео-клип в список
video_clips.append(video_clip)
# Объединяем все видео-клипы в слайд-шоу
slideshow = concatenate_videoclips(video_clips)
# Сохраняем слайд-шоу в видео-файл
slideshow.write_videofile("Слайд-шоу.mp4", fps=24)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥7❤🔥3
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7👍5
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Pywebview в Python
Библиотека
Предоставляет возможность отображать HTML-контент в собственном окне графического интерфейса, скрывая факт того, что интерфейс основан на браузере.
Доступна для Windows, macOS, Linux и Android.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Pywebview
позволяет создавать графический интерфейс, используя веб-технологии, такие как JavaScript, HTML и CSS.Предоставляет возможность отображать HTML-контент в собственном окне графического интерфейса, скрывая факт того, что интерфейс основан на браузере.
Доступна для Windows, macOS, Linux и Android.
pip install pywebview
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
Функция pygetwindow.getActiveWindow() в Python
Функция
Возвращает объект Window (активное окно).
✅ Пример использования функции:
➡️ Установка модуля:
➡️ Справочник Программиста. Подписаться
Функция
getActiveWindow()
из модуля pygetwindow
используется для получения информации о текущем активном окне на экране.Возвращает объект Window (активное окно).
import pygetwindow as gw
# Получение активного окна
active_window = gw.getActiveWindow()
# Вывод заголовка активного окна
print(active_window.title)
pip install pygetwindow
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Click в Python
Библиотека
Предоставляет простой и удобный интерфейс для определения команд, аргументов и опций, а также обработки ввода и вывода в командной строке.
Основные особенности библиотеки:
🔵 Простота использования и интуитивно понятный синтаксис;
🔵 Поддержка определения команд, аргументов и опций с различными типами данных;
🔵 Возможность создания подкоманд и вложенных команд;
🔵 Поддержка автоматической генерации справки и использования команд;
🔵 Встроенная поддержка обработки ошибок и исключений;
🔵 Поддержка различных форматов вывода, таких как текст, JSON и т.д.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Click
предоставляет возможности для создания интерфейсов командной строки (CLI) в приложениях.Предоставляет простой и удобный интерфейс для определения команд, аргументов и опций, а также обработки ввода и вывода в командной строке.
Основные особенности библиотеки:
pip install Click
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤🔥3
Получаем расширение файла при помощи Python
В данной статье научимся получать расширение файла при помощи Python.
➡️ Справочник Программиста. Подписаться
В данной статье научимся получать расширение файла при помощи Python.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥3🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Код для отслеживания изменений в директории на Python
Для отслеживания изменений в директории в коде используется библиотека watchdog.
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для отслеживания изменений в директории в коде используется библиотека watchdog.
pip install watchdog
import time
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
# Создаем класс-обработчик событий файловой системы
class MyHandler(FileSystemEventHandler):
def on_modified(self, event):
# Выполняем нужные действия при изменении файлов
print(f'Файл {event.src_path} был изменен')
# Создаем экземпляр класса Observer
observer = Observer()
# Создаем экземпляр класса обработчика событий
event_handler = MyHandler()
# Указываем путь к директории, которую нужно отслеживать
path = '/путь/к/директории'
# Регистрируем обработчик событий и путь к директории в Observer
observer.schedule(event_handler, path, recursive=True)
# Запускаем Observer в отдельном потоке
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
# При нажатии на Ctrl+C останавливаем Observer
observer.stop()
# Дожидаемся завершения работы Observer
observer.join()
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍4❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Flet в Python 👀
Библиотека
Предоставляет функции, такие как анимации, асинхронность, локальное хранение приложений и сессий, шифрование, защиту данных, аутентификацию и готовые виджеты.
Позволяет упаковывать приложения в бинарные компоненты и создавать исполняемые файлы, что упрощает передачу приложений другим пользователям.
✅ Пример приложения "Счётчик" из документации:
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Flet
предназначена для создания современных графических интерфейсов.Предоставляет функции, такие как анимации, асинхронность, локальное хранение приложений и сессий, шифрование, защиту данных, аутентификацию и готовые виджеты.
Позволяет упаковывать приложения в бинарные компоненты и создавать исполняемые файлы, что упрощает передачу приложений другим пользователям.
import flet
from flet import IconButton, Page, Row, TextField, icons
def main(page: Page):
# Устанавливаем заголовок страницы
page.title = "Пример счетчика на Flet"
# Устанавливаем выравнивание
page.vertical_alignment = "center"
# Создаем текстовое поле со значением 0
txt_number = TextField(value="0", text_align="right", width=100)
# Определяем функцию для события клика на кнопку "минус"
def minus_click(e):
# Уменьшаем значение текстового поля на 1
txt_number.value = str(int(txt_number.value) - 1)
# Обновляем страницу
page.update()
# Определяем функцию для события клика на кнопку "плюс"
def plus_click(e):
# Увеличиваем значение текстового поля на 1
txt_number.value = str(int(txt_number.value) + 1)
# Обновляем страницу
page.update()
page.add(
Row(
[
IconButton(icons.REMOVE, on_click=minus_click), # Создаем кнопку "минус" с иконкой "удалить"
txt_number, # Добавляем текстовое поле в строку
IconButton(icons.ADD, on_click=plus_click), # Создаем кнопку "плюс" с иконкой "добавить"
],
alignment="center", # Устанавливаем выравнивание строки по центру
)
)
# Запускаем приложение
flet.app(target=main)
pip install Flet
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍5❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Для получения списка файлов с определённым расширением в указанной директории в коде используется стандартная библиотека
os
.import os
def get_files_with_extension(folder_path, extension):
# Создаем пустой список для хранения имен файлов
file_list = []
# Проходимся по каждому файлу в указанном пути
for file in os.listdir(folder_path):
# Проверяем, заканчивается ли имя файла на указанное расширение
if file.endswith(extension):
# Добавляем имя файла в список file_list, если оно имеет указанное расширение
file_list.append(file)
# Возвращаем список файлов с указанным расширением
return file_list
# Вызываем функцию с текущей директорией и расширением '.py'
print(get_files_with_extension('./', '.py'))
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥10👍5