Python Ninja | Программирование
6.92K subscribers
1.08K photos
99 videos
917 links
Канал для всех кто хочет освоить или прокачать навыки программирования на Python. Присоединяйся, чтобы стать настоящим Python Ninja!

Связь: @sfoninja
Download Telegram
Практичный гайд для переезда на Python для тех кто еще не решился

Наткнулся на крутой гайд как с умом пересесть на Python. Автор по шагам делится чем заменить привычные инструменты, как всё настроить и вообще кайфовать от процесса 🔞

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Переопределение методов и ошибка сигнатуры в наследовании

Что выведет код? 🤤

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍2
Варианты
Anonymous Quiz
22%
A
6%
B
49%
C
24%
D
Если вы ещё не видели этот полезный сборник по чистому Bash зацените

Тут собраны десятки решений типовых задач: работа со строками, массивами, файлами, аргументами и даже числами — всё только на чистом Bash. Отличная штука чтобы подтянуть скилл и узнать, на что вообще способен сам Bash без костылей 📝

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
Сделай выбор уже сегодня 🤷‍♂️

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
😁3🤩1
Если вы новичок в Python остановитесь и внимательно посмотрите 👇

НИКОГДА не изменяйте список во время итерации по нему

Когда вы изменяете список в процессе обхода, итератор «теряется». Он не понимает, что список изменился прямо во время его работы.

Например, этот код работает неправильно:
items = [1, 2, 2, 3, 4]
for item in items:
if item == 2:
items.remove(item)

print(items)
# Output: [1, 2, 3, 4]


Мы используем метод remove(), чтобы удалить все двойки из списка. Но, как видно из результата, одна 2 всё равно остаётся.

Почему так происходит? Когда вы удаляете элемент из списка, все элементы сдвигаются влево. Но цикл продолжает идти вперёд по индексам. В итоге происходит следующее:
первая 2 находится и удаляется

вторая 2 сдвигается на её место

цикл переходит к следующему индексу

и эта 2 просто пропускается


Правильный способ итерироваться по копии списка:
for item in items[:]:
if item == 2:
items.remove(item)

print(items)
# Output: [1, 3, 4]


Когда вы проходите по копии (поверхностной копии), индексы исходного списка не «сбиваются».

🔥 Ещё лучше использовать генератор списка (list comprehension):
items = [x for x in items if x != 2]


👑 Запомните: никогда не изменяйте список (или любую другую коллекцию) во время прямой итерации по нему. Итератор не умеет корректно работать со структурными изменениями:

он может пропускать элементы

обрабатывать один и тот же элемент дважды

или даже вызывать ошибку RuntimeError (например, в словарях)


Это плохая практика

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
5🏆3
Принёс поиграться «Tetris» прямо в терминале

Нашёл недавно залипательный проект любителей консоли классический Tetris, который работает прямо в терминале. Никаких окон и графики: только клава, минимализм и чистый геймплей

Написано на Rust, запускается быстро и отлично передаёт дух «олдскульных» игр. Идеально, чтобы отвлечься на пару минут (которые внезапно превращаются в час) или подсмотреть, как делаются TUI-приложения 🎮

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
2
В сети появился мощный инструмент для изучения алгоритмов «alg0dev»

Нашёл сервис который превращает сложные алгоритмы в наглядное шоу: сортировки, графы и поиск оживают прямо на экране

Каждый шаг здесь визуализирован и синхронизирован с кодом его можно остановить, прокрутить и разобраться, что происходит под капотом

Просто запускаешь и начинаешь понимать алгосы как не в себя 🐙

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Основные операторы Python: сложение, вычитание и не только

Разбираем базовые операторы Python арифметические действия, деление с остатком и целочисленное деление. Простые примеры кода с результатами помогут быстро понять их работу.


✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
Изменение атрибута экземпляра в методе класса

Что выведет код? 👍

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Варианты
Anonymous Quiz
66%
A
12%
B
12%
C
10%
D
Жирный подгон новичкам «Coddy» широкая подборка курсов и задач

На этой страничке «Coddy» собрано всё самое вкусное по Python: курсы, задачки, проекты и челленджи. Хотите научиться с нуля или подтянуть конкретную тему тут есть и основы, и тонкости, и куча примеров для тренировки

Ставь лайк и погнали учиться🏃‍♂️

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Ага... понятно 😧

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝72