Ограничьте использование процессора и памяти
Если вы не хотите оптимизировать память вашей программы или корректировать работу процессора, то можно просто установить лимиты. К счастью, в Python для этого есть специальная библиотека
Подписывайтесь на канал 👉@pythonofff
Если вы не хотите оптимизировать память вашей программы или корректировать работу процессора, то можно просто установить лимиты. К счастью, в Python для этого есть специальная библиотека
Подписывайтесь на канал 👉@pythonofff
👍2
Подборка Telegram каналов для программистов
https://t.me/bash_srv Bash Советы
https://t.me/win_sysadmin Системный Администратор Windows
https://t.me/lifeproger Жизнь программиста. Авторский канал.
https://t.me/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
https://t.me/rabota1C_rus Вакансии для программистов 1С
Системное администрирование 📌
https://t.me/sysadmin_girl Девочка Сисадмин
https://t.me/srv_admin_linux Админские угодья
https://t.me/linux_srv Типичный Сисадмин
https://t.me/linux_odmin Linux: Системный администратор
https://t.me/devops_star DevOps Star (Звезда Девопса)
https://t.me/i_linux Системный администратор
https://t.me/linuxchmod Linux
https://t.me/sys_adminos Системный Администратор
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://t.me/DevLab1C 1С:Предприятие 8
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_2 Хакер Free
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Математика 📌
https://t.me/Pomatematike Канал по математике
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
https://t.me/Excel_lifehack
https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
https://t.me/bash_srv Bash Советы
https://t.me/win_sysadmin Системный Администратор Windows
https://t.me/lifeproger Жизнь программиста. Авторский канал.
https://t.me/devopslib Библиотека девопса | DevOps, SRE, Sysadmin
https://t.me/rabota1C_rus Вакансии для программистов 1С
Системное администрирование 📌
https://t.me/sysadmin_girl Девочка Сисадмин
https://t.me/srv_admin_linux Админские угодья
https://t.me/linux_srv Типичный Сисадмин
https://t.me/linux_odmin Linux: Системный администратор
https://t.me/devops_star DevOps Star (Звезда Девопса)
https://t.me/i_linux Системный администратор
https://t.me/linuxchmod Linux
https://t.me/sys_adminos Системный Администратор
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://t.me/DevLab1C 1С:Предприятие 8
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_2 Хакер Free
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Математика 📌
https://t.me/Pomatematike Канал по математике
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
Excel лайфхак📌
https://t.me/Excel_lifehack
https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
Telegram
Bash Советы
🚀 Секреты и советы по Bash
🔹 Полезные трюки, хитрые однострочники и лайфхаки для работы в терминале.
🔹 Автоматизация, скрипты и оптимизация работы в Linux.
🔹 Стать мастером Bash легко – просто подпишись!
💻 Прокачивай терминал вместе с нами! 👇
🔹 Полезные трюки, хитрые однострочники и лайфхаки для работы в терминале.
🔹 Автоматизация, скрипты и оптимизация работы в Linux.
🔹 Стать мастером Bash легко – просто подпишись!
💻 Прокачивай терминал вместе с нами! 👇
collections
В Python есть отличные встроенные типы данных, но иногда они ведут себя не так, как вам бы хотелось.
К счастью, в стандартной библиотеке Python присутствует модуль collections. Это полезное дополнение предлагает расширенные типы данных.
Подписывайтесь на канал 👉@pythonofff
В Python есть отличные встроенные типы данных, но иногда они ведут себя не так, как вам бы хотелось.
К счастью, в стандартной библиотеке Python присутствует модуль collections. Это полезное дополнение предлагает расширенные типы данных.
Подписывайтесь на канал 👉@pythonofff
Задание определенной точности
Иногда нам нужно указать количество знаков после запятой в числе. В такой ситуации мы используем все ту же функцию float(), а после нее — функцию format(), чтобы определить количество десятичных знаков в нашем числе.
В данном примере мы работаем со строкой «6.759104». Нам нужно преобразовать эту строку в число с плавающей запятой и оставить только 4 цифры после запятой.
Подписывайтесь на канал 👉@pythonofff
Иногда нам нужно указать количество знаков после запятой в числе. В такой ситуации мы используем все ту же функцию float(), а после нее — функцию format(), чтобы определить количество десятичных знаков в нашем числе.
В данном примере мы работаем со строкой «6.759104». Нам нужно преобразовать эту строку в число с плавающей запятой и оставить только 4 цифры после запятой.
Подписывайтесь на канал 👉@pythonofff
👍2
Несколько возможных типов возвращаемых значений
Если в вашей функции есть переменная, принимающая значения различных типов, можно использовать типы typing.Optional или typing.Union.
Используйте Optional, если значение будет либо определенного типа, либо исключительно None.
Подписывайтесь на канал 👉@pythonofff
Если в вашей функции есть переменная, принимающая значения различных типов, можно использовать типы typing.Optional или typing.Union.
Используйте Optional, если значение будет либо определенного типа, либо исключительно None.
Подписывайтесь на канал 👉@pythonofff
👍2
🐍 Как улучшить читаемость кода в Python?
Читаемость кода — это не просто прихоть, а залог продуктивности. Чем понятнее код, тем проще его поддерживать и меньше багов он содержит. Сегодня я расскажу несколько простых, но мощных техник, которые помогут сделать код чище.
1. Используйте говорящие имена переменных и функций
❌ Плохо:
✅ Хорошо:
Название должно передавать суть, а не заставлять читателя гадать.
2. Разбивайте код на функции
Код должен быть модульным. Если в функции больше 20 строк — подумайте, можно ли её разбить.
❌ Плохо (монолитная функция):
✅ Хорошо (логично разнесённый код):
3. Избегайте "магических чисел"
Числа в коде без пояснений — зло. Лучше использовать именованные константы.
❌ Плохо:
✅ Хорошо:
4. Следуйте PEP 8
Форматирование кода важно! Используйте линтеры, например
5. Документируйте код
Хороший код объясняет сам себя, но комментарии тоже нужны.
❌ Плохо:
✅ Хорошо:
Подписывайтесь на канал 👉@pythonofff
Читаемость кода — это не просто прихоть, а залог продуктивности. Чем понятнее код, тем проще его поддерживать и меньше багов он содержит. Сегодня я расскажу несколько простых, но мощных техник, которые помогут сделать код чище.
1. Используйте говорящие имена переменных и функций
❌ Плохо:
def f(a, b):
return a + b
✅ Хорошо:
def calculate_total_price(price: float, tax: float) -> float:
return price + tax
Название должно передавать суть, а не заставлять читателя гадать.
2. Разбивайте код на функции
Код должен быть модульным. Если в функции больше 20 строк — подумайте, можно ли её разбить.
❌ Плохо (монолитная функция):
def process_order(order):
tax = order.price * 0.2
total = order.price + tax
print(f"Total price: {total}")
order.status = "processed"
save_to_db(order)
✅ Хорошо (логично разнесённый код):
def calculate_tax(price):
return price * 0.2
def process_payment(order):
tax = calculate_tax(order.price)
total = order.price + tax
print(f"Total price: {total}")
return total
def finalize_order(order):
order.status = "processed"
save_to_db(order)
3. Избегайте "магических чисел"
Числа в коде без пояснений — зло. Лучше использовать именованные константы.
❌ Плохо:
discounted_price = price * 0.9
✅ Хорошо:
DISCOUNT_RATE = 0.1
discounted_price = price * (1 - DISCOUNT_RATE)
4. Следуйте PEP 8
Форматирование кода важно! Используйте линтеры, например
black
или flake8
, чтобы соблюдать стандарт.5. Документируйте код
Хороший код объясняет сам себя, но комментарии тоже нужны.
❌ Плохо:
# Умножаем x на 2
x = x * 2
✅ Хорошо:
# Удваиваем сумму для учёта бонусов
final_amount = amount * 2
Подписывайтесь на канал 👉@pythonofff
👍5
Абстракция словарей/множеств
С абстракциями списков (list comprehension) вы скорее всего сталкивались, но вот с абстракциями словарей/множеств (dict/set comprehension) — вряд ли. Они просты в использовании и так же эффективны.
Подписывайтесь на канал 👉@pythonofff
С абстракциями списков (list comprehension) вы скорее всего сталкивались, но вот с абстракциями словарей/множеств (dict/set comprehension) — вряд ли. Они просты в использовании и так же эффективны.
Подписывайтесь на канал 👉@pythonofff
👍2
Преобразование списка строк
Допустим, у нас есть список, содержащий числа в строковом формате. Чтобы преобразовать все эти элементы в числа с плавающей запятой, мы перебираем список в цикле for. Каждый элемент мы преобразуем из строкового в вещественный. Делается это при помощи функции float().
Мы создаем пустой список number, куда добавим наши числа в формате float. Далее мы используем цикл for для добавления каждого элемента из исходного списка в список number. При этом перед добавлением мы передаем в функцию float() каждый элемент, чтобы преобразовать его из строки в число с плавающей запятой.
Подписывайтесь на канал 👉@pythonofff
Допустим, у нас есть список, содержащий числа в строковом формате. Чтобы преобразовать все эти элементы в числа с плавающей запятой, мы перебираем список в цикле for. Каждый элемент мы преобразуем из строкового в вещественный. Делается это при помощи функции float().
Мы создаем пустой список number, куда добавим наши числа в формате float. Далее мы используем цикл for для добавления каждого элемента из исходного списка в список number. При этом перед добавлением мы передаем в функцию float() каждый элемент, чтобы преобразовать его из строки в число с плавающей запятой.
Подписывайтесь на канал 👉@pythonofff
👍3❤1
Как перевернуть список в Python с помощью срезов
Срезы работают аналогично функции range(), которую мы разобрали ранее.
Срез также включает в себе три параметра: start, stop и step.
Синтаксис выглядит следующим образом: [start:end:step].
Если вы хотите вывести все элементы, вы можете использовать один из двух следующих способов
Подписывайтесь на канал 👉@pythonofff
Срезы работают аналогично функции range(), которую мы разобрали ранее.
Срез также включает в себе три параметра: start, stop и step.
Синтаксис выглядит следующим образом: [start:end:step].
Если вы хотите вывести все элементы, вы можете использовать один из двух следующих способов
Подписывайтесь на канал 👉@pythonofff
👍2❤1👎1
Используйте объекты, которые поддерживают оператор with
Открыть файл и заблокировать фрагмент кода можно с помощью оператора with, но можно ли сделать это, пользуясь собственным методом? Да, можно реализовать протокол context manager, используя методы enter и exit
Подписывайтесь на канал 👉@pythonofff
Открыть файл и заблокировать фрагмент кода можно с помощью оператора with, но можно ли сделать это, пользуясь собственным методом? Да, можно реализовать протокол context manager, используя методы enter и exit
Подписывайтесь на канал 👉@pythonofff
Сила «однострочников» (One-Liners)
Вы устали пробираться между строк кода и теряться в условных конструкциях? Тогда, однострочники Python — это то, что вам нужно.
Подписывайтесь на канал 👉@pythonofff
Вы устали пробираться между строк кода и теряться в условных конструкциях? Тогда, однострочники Python — это то, что вам нужно.
Подписывайтесь на канал 👉@pythonofff
Как удалить пробелы из строки с помощью translate()
Функция translate() чем-то схожа с функцией replace(). Общая цель функций translate() и replace() – заменить определенный символ в заданной строке на другой символ. Однако определённые различия всё-таки есть.
Подписывайтесь на канал 👉@pythonofff
Функция translate() чем-то схожа с функцией replace(). Общая цель функций translate() и replace() – заменить определенный символ в заданной строке на другой символ. Однако определённые различия всё-таки есть.
Подписывайтесь на канал 👉@pythonofff
Как сделать POST-запрос
Мы используем запрос POST для добавления новых данных в REST API. Данные отправляются на сервер в формате JSON, который выглядит как словарь Python. Согласно документации Fake Store API, у продукта есть следующие атрибуты: title (название), price (цена), description (описание), image (изображение) и category.
Подписывайтесь на канал 👉@pythonofff
Мы используем запрос POST для добавления новых данных в REST API. Данные отправляются на сервер в формате JSON, который выглядит как словарь Python. Согласно документации Fake Store API, у продукта есть следующие атрибуты: title (название), price (цена), description (описание), image (изображение) и category.
Подписывайтесь на канал 👉@pythonofff
❤2
Как перевернуть список в Python с помощью метода .reverse()
При использовании данного встроенного метода в Python список изменяется сразу же. Это означает, что изменяется исходный порядок данного списка.
Первоначальный порядок элементов исходного списка изменяется и тут же обновляется.
Подписывайтесь на канал 👉@pythonofff
При использовании данного встроенного метода в Python список изменяется сразу же. Это означает, что изменяется исходный порядок данного списка.
Первоначальный порядок элементов исходного списка изменяется и тут же обновляется.
Подписывайтесь на канал 👉@pythonofff
👍3
Создание таблиц
Супер классной библиотекой является PrettyTable. Она позволяет мега быстро создать красивую таблицу для вывода в консоль. Если вы где-то учитесь или же часто нужно демонтировать информацию, то рекомендуем сохранить название этой библиотеки.
Работать с ней просто. Нужно лишь создать объект на основе PrettyTable и далее поместить в него название рядов и сами ряды.
Таблицу можно даже выровнять по определенному краю, а также можно указать сортировку по определенному полю.
Подписывайтесь на канал 👉@pythonofff
Супер классной библиотекой является PrettyTable. Она позволяет мега быстро создать красивую таблицу для вывода в консоль. Если вы где-то учитесь или же часто нужно демонтировать информацию, то рекомендуем сохранить название этой библиотеки.
Работать с ней просто. Нужно лишь создать объект на основе PrettyTable и далее поместить в него название рядов и сами ряды.
Таблицу можно даже выровнять по определенному краю, а также можно указать сортировку по определенному полю.
Подписывайтесь на канал 👉@pythonofff
👍7
Красивая консоль
Зачастую вся информация в консоли - это скучный белый или же черный текст. Согласитесь, такое и читать не интересно. Благо в питоне есть библиотека TermColor.
За счет этой библиотеки мы быстро можем настроить какие именно стили будут применены к тексту в консоли
Подписывайтесь на канал 👉@pythonofff
Зачастую вся информация в консоли - это скучный белый или же черный текст. Согласитесь, такое и читать не интересно. Благо в питоне есть библиотека TermColor.
За счет этой библиотеки мы быстро можем настроить какие именно стили будут применены к тексту в консоли
Подписывайтесь на канал 👉@pythonofff
👍6
Редактор видео
Все еще в поиске крутого видео редактора? Зачем что-то искать, когда есть Python и замечательная библиотека MoviePy :)
За счет MoviePy вы можете перевернуть видео, можете его обрезать, можете изменить количество FPS и можете выполнить ещё много других действий.
Мы создадим программу, что будет принимать видео и отделять от него звук, который будем сохранять в качестве отдельного файла.
Подписывайтесь на канал 👉@pythonofff
Все еще в поиске крутого видео редактора? Зачем что-то искать, когда есть Python и замечательная библиотека MoviePy :)
За счет MoviePy вы можете перевернуть видео, можете его обрезать, можете изменить количество FPS и можете выполнить ещё много других действий.
Мы создадим программу, что будет принимать видео и отделять от него звук, который будем сохранять в качестве отдельного файла.
Подписывайтесь на канал 👉@pythonofff
👍3
Три открытых урока для Python-разработчиков
Если уже освоили базовый Python и хотите прокачаться в веб-разработке — не пропустите бесплатные занятия от OTUS.
📺 Web-фреймворк на Python за час | 26 марта в 20:00 (Мск)
Разберём, как работает WSGI, создадим минимальный фреймворк с маршрутизацией и поймём, что лежит в основе Django.
→ Записаться
📺 Знакомство с Django REST Framework: создание API на Django | 17 апреля в 20:00 (Мск)
Узнаете, как строить REST API на Django, сделаете первый шаг к полноценным бэкенд-сервисам.
→ Записаться
📺 Асинхронное Django-приложение: работа с асинхронными ORM и views | 23 апреля в 20:00 (Мск)
Освоите asyncio в Django, научитесь писать асинхронные представления и взаимодействовать с БД.
→ Записаться
Записывайтесь на открытые уроки и получите практические знания из первых рук. Все занятия проводятся онлайн, а ведут их опытные разработчики!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Если уже освоили базовый Python и хотите прокачаться в веб-разработке — не пропустите бесплатные занятия от OTUS.
📺 Web-фреймворк на Python за час | 26 марта в 20:00 (Мск)
Разберём, как работает WSGI, создадим минимальный фреймворк с маршрутизацией и поймём, что лежит в основе Django.
→ Записаться
📺 Знакомство с Django REST Framework: создание API на Django | 17 апреля в 20:00 (Мск)
Узнаете, как строить REST API на Django, сделаете первый шаг к полноценным бэкенд-сервисам.
→ Записаться
📺 Асинхронное Django-приложение: работа с асинхронными ORM и views | 23 апреля в 20:00 (Мск)
Освоите asyncio в Django, научитесь писать асинхронные представления и взаимодействовать с БД.
→ Записаться
Записывайтесь на открытые уроки и получите практические знания из первых рук. Все занятия проводятся онлайн, а ведут их опытные разработчики!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Обработка ошибок во время выполнения
Это самый полезный совет для программистов, работающих с Python. Вы можете устранить ошибку и избавить программу от сбоев во время выполнения.
Подписывайтесь на канал 👉@pythonofff
Это самый полезный совет для программистов, работающих с Python. Вы можете устранить ошибку и избавить программу от сбоев во время выполнения.
Подписывайтесь на канал 👉@pythonofff
👍3❤1
Транспонирование 2d-массива
Этот лайфхак покажет, как выполнить транспонирование 2d-массива с помощью метода zip.
Подписывайтесь на канал 👉@pythonofff
Этот лайфхак покажет, как выполнить транспонирование 2d-массива с помощью метода zip.
Подписывайтесь на канал 👉@pythonofff
❤4