Исключения — важный инструмент для написания надежного и устойчивого к ошибкам кода. В Python много встроенных исключений, предусматривающих все возможные ошибки, их мы в этом посте и разберем!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍8
🔥14👍6
Оба метода принимают подстроку, но
find
— находит и возвращает индекс первого совпадения с подстрокой, а replace
— заменяет найденную подстроку на новую:• find
— возвращает индекс найденного совпадения, принимает необязательные аргументы — интервалы поиска и возвращает -1
, если ничего не найдет.• replace
— возвращает копию исходной строки с новой подстрокой вместо прежней.🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥27🤝17👍7
Сэкономь время и нервы, просто сделав бэкап перед изменением!
#средничкам
Создадим функцию для резервного копирования файла перед его изменением. Для этого импортируем библиотеки
Функция будет принимать файл и делать его копию. Можно вызывать ее во время открытия файла через контекстный менеджер, если планируется перезапись файла:
Здесь мы убеждаемся, что переданный файл существует и проверяем наличии папки с бэкапами. Далее внутри копии разделим имя файла и расширение для дальнейшего добавления в название времени создания копии, а также зафиксируем время изменения:
Теперь создадим путь к файлу, соединив путь к папке с бэкапами с названием копии файла и наконец скопируем содержимое исходника в бэкап:
Пример использования:
🔥 В следующей части напишем кастомный контекстный менеджер и добавим в него логику резервного копирования исходного файла!
👉 Python Ready | #практика
#средничкам
Создадим функцию для резервного копирования файла перед его изменением. Для этого импортируем библиотеки
shutil
, os
, datetime
Функция будет принимать файл и делать его копию. Можно вызывать ее во время открытия файла через контекстный менеджер, если планируется перезапись файла:
def file_backup(filepath):
if not os.path.exists(filepath):
return f'{filepath} не существует'
if not os.path.exists('backups'):
os.mkdirs('backups')
Здесь мы убеждаемся, что переданный файл существует и проверяем наличии папки с бэкапами. Далее внутри копии разделим имя файла и расширение для дальнейшего добавления в название времени создания копии, а также зафиксируем время изменения:
filename, file_extension = os.path.splitext(filepath)
timestamp = datetime.datetime.now().strftime('%Y%m%d_%H%M%S')
Теперь создадим путь к файлу, соединив путь к папке с бэкапами с названием копии файла и наконец скопируем содержимое исходника в бэкап:
backup_filepath = os.path.join('backups', f'{filename}_{timestamp}{file_extension}')
shutil.copy2(filepath, backup_filepath)
Пример использования:
file_backup(important_documents.txt)
🔥 В следующей части напишем кастомный контекстный менеджер и добавим в него логику резервного копирования исходного файла!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥7🤝2
This media is not supported in your browser
VIEW IN TELEGRAM
Уже были разные сайты, и пришло время быстренько изучить Git
learngitbranching — небольшая браузерная игра, которая поможет вам изучить Git. В ней вы познакомитесь с основными командами, которые пригодятся вам в повседневной работе.
📌 Оставляю ссылочку: learngitbranching.js
👉 Python Ready | #ресурс
learngitbranching — небольшая браузерная игра, которая поможет вам изучить Git. В ней вы познакомитесь с основными командами, которые пригодятся вам в повседневной работе.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍5
Она включает в себя:
• Создание, редактирование и отображение QR-кода через библиотеку qrcode
• Анимирование QR-кода с помощью модуля imageio
• Руководство по «игре» в тетрис
🔊 Интересно? Продолжай читать на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥4🤝3
Переведённые на русский язык лекции топового Гарвардского курса CS50 по основам программирования. Курс охватывает ключевые концепции информатики, такие как алгоритмы, структуры данных, веб-разработка и многое другое.
Ссылочка на плейлист: YouTube🖤
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥6
Напишем асинхронную функцию с помощью библиотек asyncio и aiohttp:
Этот скрипт пингует несколько сайтов одновременно, не ожидая завершения каждого запроса последовательно. Это значительно ускоряет выполнение, особенно когда есть задержки на сервере или в сети.
Основные функции:
• async — определение асинхронной функции (корутины)
• await — приостановка выполнения функции до тех пор, пока не завершится другая корутина
• aiohttp.ClientSession — выполнение HTTP-запросов
🔥 — если узнал новое
🤝 — если уже пользовался
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19👍6🤝5
👍12🔥9