4 способа скопировать список в Python
В Python есть несколько способов сделать копию списка. Но важно понимать разницу между shallow copy (поверхностная копия) и deep copy (полная копия).
Теперь проверим разницу между поверхностной и полной копией:
👉 @PythonPortal
В Python есть несколько способов сделать копию списка. Но важно понимать разницу между shallow copy (поверхностная копия) и deep copy (полная копия).
original = [1, 2, [3, 4]]
# 1. Срез (shallow copy)
copy1 = original[:]
# 2. Метод .copy() (shallow copy)
copy2 = original.copy()
# 3. Через list() (shallow copy)
copy3 = list(original)
# 4. deepcopy (deep copy)
import copy
copy4 = copy.deepcopy(original)
Теперь проверим разницу между поверхностной и полной копией:
original[2].append(5)
print(copy1)
# [1, 2, [3, 4, 5]] — вложенный список изменился!
print(copy4)
# [1, 2, [3, 4]] — без изменений
Please open Telegram to view this post
VIEW IN TELEGRAM
❤28👍15🔥7
This media is not supported in your browser
VIEW IN TELEGRAM
Лайфхак для GitHub: теперь можно превращать любой репозиторий в один текстовый файл, удобный для LLM
Просто замените «
Это позволяет дать полную контекстную информацию любому ИИ, например ChatGPT или Claude, чтобы разбирать код, отвечать на вопросы или помогать исправлять ошибки.
Идеальный способ быстрее изучать и анализировать репозитории.✏️
👉 @PythonPortal
Просто замените «
hub
» на «1file
» в URL репозитория, и все файлы объединятся в один чистый текст. Файл можно скачать в обычном или сжатом формате.Это позволяет дать полную контекстную информацию любому ИИ, например ChatGPT или Claude, чтобы разбирать код, отвечать на вопросы или помогать исправлять ошибки.
Идеальный способ быстрее изучать и анализировать репозитории.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35❤10🔥2
Media is too big
VIEW IN TELEGRAM
Нашлась утилита Real-Time Voice Cloning
Которая клонирует речь и воспроизводит любые фразы с вашей интонацией всего за пару секунд записи.
Она работает на Python, генерирует речь в реальном времени и полностью локальна, никаких облаков и ограничений.🫠
👉 @PythonPortal
Которая клонирует речь и воспроизводит любые фразы с вашей интонацией всего за пару секунд записи.
Она работает на Python, генерирует речь в реальном времени и полностью локальна, никаких облаков и ограничений.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31❤7🔥3🤣1🏆1💊1
This media is not supported in your browser
VIEW IN TELEGRAM
Visual Studio Code теперь умеет автоматически обрабатывать TODO-комментарии в коде. С новой функцией и помощью GitHub Copilot можно за два клика решать задачи и сразу создавать PR.
👉 @PythonPortal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍23❤6🔥3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁77🤣32❤4🔥4😢3
Генерация UUID в Python ускорилась в 30 раз и теперь почти на уровне Bun и NodeJS. Но стоит честно упомянуть, что дальше ускорять почти невозможно из-за ограничений генерации случайных чисел.
Ссылка на PR —> https://github.com/python/cpython/pull/139123
👉 @PythonPortal
Ссылка на PR —> https://github.com/python/cpython/pull/139123
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27❤4
Полезная находка для Python-разработчиков: статья «20 лучших практик Python 2025» от Aglowid IT Solutions.
В ней собраны ключевые советы по эффективной разработке -> PEP-стандарты, структура проекта, чистый и идиоматичный код, тесты и работа с исключениями.
Честно, читаешь и сразу хочется переписать весь свой проект🤪
👉 @PythonPortal
В ней собраны ключевые советы по эффективной разработке -> PEP-стандарты, структура проекта, чистый и идиоматичный код, тесты и работа с исключениями.
Честно, читаешь и сразу хочется переписать весь свой проект
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤3
Вышел Typer 0.19.0
Теперь можно использовать🎰
https://github.com/fastapi/typer
👉 @PythonPortal
Теперь можно использовать
Literal
из typing
для CLI-параметров, которые принимают только одно из нескольких значений. Самая долгожданная фича наконец доступна. https://github.com/fastapi/typer
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤7
This media is not supported in your browser
VIEW IN TELEGRAM
Визуализация Python-объектов и ссылок
Многие начинающие Python-разработчики сталкиваются с путаницей при работе с изменяемостью и ссылками между переменными. Особенно тяжело разобраться при отладке сложных структур данных, когда непонятно, как именно они связаны.⌨️
Поэтому держите memory_graph — опенсорс тул для визуализации Python-объектов и ссылок. Он показывает структуру данных, стек вызовов и связи между переменными.
А также поддерживает работу с рекурсией и такими структурами, как бинарные деревья или связанные списки.
Работает в VS Code, Jupyter, PyCharm и доступен онлайн без установки.
👉 @PythonPortal
Многие начинающие Python-разработчики сталкиваются с путаницей при работе с изменяемостью и ссылками между переменными. Особенно тяжело разобраться при отладке сложных структур данных, когда непонятно, как именно они связаны.
Поэтому держите memory_graph — опенсорс тул для визуализации Python-объектов и ссылок. Он показывает структуру данных, стек вызовов и связи между переменными.
А также поддерживает работу с рекурсией и такими структурами, как бинарные деревья или связанные списки.
Работает в VS Code, Jupyter, PyCharm и доступен онлайн без установки.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33🔥9❤5
В PyTorch выявлены два неудачных дефолтных параметра в DataLoader, которые серьёзно снижают производительность при обучении моделей. Исправление этих настроек позволяет добиться примерно пятикратного ускорения. 🦆
При обучении на GPU данные переносятся на устройство через
Использование фиксации памяти решает эту проблему. Пока модель обучается на первом мини-батче, CPU успевает заранее перенести второй мини-батч на GPU. Таким образом, видеокарта не простаивает в ожидании новых данных и сразу начинает вычисления с готовым батчем.
Реализовать это просто:
- добавить
- при передаче данных использовать
Кроме того, рекомендуется задать
Тесты показывают, что такие настройки дают заметное ускорение, что подтверждается результатами на графиках.
👉 @PythonPortal
При обучении на GPU данные переносятся на устройство через
.to(device)
, после чего все вычисления выполняются уже на видеокарте. В итоге процесс получается неэффективным: когда работает GPU, CPU простаивает, и наоборот.Использование фиксации памяти решает эту проблему. Пока модель обучается на первом мини-батче, CPU успевает заранее перенести второй мини-батч на GPU. Таким образом, видеокарта не простаивает в ожидании новых данных и сразу начинает вычисления с готовым батчем.
Реализовать это просто:
- добавить
pin_memory=True в DataLoader
,- при передаче данных использовать
.to(device, non_blocking=True)
Кроме того, рекомендуется задать
num_workers
в DataLoader
для параллельной загрузки данных.Тесты показывают, что такие настройки дают заметное ускорение, что подтверждается результатами на графиках.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤44👍10🔥3
Практикуемся в алгоритмах на любом языке
На платформе CSES Problem Set доступно более 400 задач, охватывающих широкий спектр тем, включая динамическое программирование, графы, строки, математические задачи и многое другое, что можно решать на самых популярных языках: C/C++, Java, Python, C#.
👉 @PythonPortal
На платформе CSES Problem Set доступно более 400 задач, охватывающих широкий спектр тем, включая динамическое программирование, графы, строки, математические задачи и многое другое, что можно решать на самых популярных языках: C/C++, Java, Python, C#.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤18👍6
25 сентября(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9
Время полезных шпаргалок: нашел шпаргалку с топ-9 самых популярных HTTP-запросов
Забираем в сохранёнки
👉 @PythonPortal
Забираем в сохранёнки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22❤7
Data-вызов от Яндекса: обновленные тестовые задания на стажировку для будущих аналитиков
Яндекс приглашает на стажировку для начинающих аналитиков в Москве и Санкт-Петербурге! Компания только обновила тестовые задания, чтобы у всех, кто пробовал силы ранее, был шанс попробовать снова.
Вы сможете работать над продуктами и решать важные бизнес-задачи: запускать А/В-тесты, собирать датасеты, строить дашборды и анализировать метрики.
Стажеров ждёт:
✅ Решение реальных задач для сервисов с миллионной аудиторией
✅ Гибкий график, который удобно совмещать с учёбой
✅ Поддержка ментора
✅ Зарплата на весь срок стажировки
✅ Айтиобщага для участников из других городов
✅ Отложенный офер, если вы ещё учитесь
Используйте возможность влиять на ключевые решения и видеть, как ваша работа меняет продукты для миллионов пользователей. Подать заявку, получить советы по подготовке и найти полезные материалы можно на сайте.
Яндекс приглашает на стажировку для начинающих аналитиков в Москве и Санкт-Петербурге! Компания только обновила тестовые задания, чтобы у всех, кто пробовал силы ранее, был шанс попробовать снова.
Вы сможете работать над продуктами и решать важные бизнес-задачи: запускать А/В-тесты, собирать датасеты, строить дашборды и анализировать метрики.
Стажеров ждёт:
✅ Решение реальных задач для сервисов с миллионной аудиторией
✅ Гибкий график, который удобно совмещать с учёбой
✅ Поддержка ментора
✅ Зарплата на весь срок стажировки
✅ Айтиобщага для участников из других городов
✅ Отложенный офер, если вы ещё учитесь
Используйте возможность влиять на ключевые решения и видеть, как ваша работа меняет продукты для миллионов пользователей. Подать заявку, получить советы по подготовке и найти полезные материалы можно на сайте.
❤6👍5👀2💊2
Python-библиотека FindMy .py позволяет работать с сетью Apple Find My без Mac.
С её помощью можно получать и расшифровывать данные о местоположении AirTags и других аксессуаров, сканировать рядом находящиеся устройства и управлять ключами аксессуаров.
Установить просто через
👉 @PythonPortal
С её помощью можно получать и расшифровывать данные о местоположении AirTags и других аксессуаров, сканировать рядом находящиеся устройства и управлять ключами аксессуаров.
Установить просто через
pip install findmy
, а примеры использования есть в папке examples. Подробнее на GitHubPlease open Telegram to view this post
VIEW IN TELEGRAM
❤21👍7
Совет по PEP8:
Для лучшей читаемости переносите строки перед бинарными операторами (например, +, -, *, /), а не после них. Это позволяет выравнивать операторы с их операндами и избегать их разбрасывания по разным строкам.
Пример:
👉 @PythonPortal
Для лучшей читаемости переносите строки перед бинарными операторами (например, +, -, *, /), а не после них. Это позволяет выравнивать операторы с их операндами и избегать их разбрасывания по разным строкам.
Пример:
# good
income = (gross_wages
+ taxable_interest
+ (dividends - qualified_dividends)
- ira_deduction
- student_loan_interest)
# bad
income = (gross_wages +
taxable_interest +
(dividends - qualified_dividends) -
ira_deduction -
student_loan_interest)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤39👍20🔥9
Вакансия: Руководитель группы разработки (Python), Tech Lead
Ссылка на вакансию
Ссылка на вакансию
hh.ru
Вакансия Руководитель группы разработки (Python), Tech Lead в Москве, работа в компании Инсайдерлабс
Зарплата: не указана. Москва. Требуемый опыт: более 6 лет. Полная. Дата публикации: 23.09.2025.
❤9👍1😁1