Программистика
Closed channel
Лучший канал про python Ссылка для друга: https://t.me/+Ai6ughKtf5g2ZmFi Купить рекламу: https://telega.in/c/+Ai6ughKtf5g2ZmFi Админ: @JeyRahol По рекламе: @ReivuManager
Show more5 571
Subscribers
-524 hours
-427 days
-11830 days
Posts Archive
5 571
❗ТОП 2 канала для тех, кто хочет хочет развиваться в кибербезе
🔤Project Omega — закрытая лаборатория белого хакера. Криптография на практике и разборы популярных инструментов защиты.
🔤no system is safe // cybersec — один из древнейших ресурсов по информационной безопасности в рунете. Книги, курсы, полезные тулсы, уроки по Linux, новости клирнета.
🔤Никаких заявок! Каналы открыты!
5 571
Как живет айтишник, который зарабатывает 5000$ в мес?
Живет хорошо! За глубокие знания и умение решать самые сложные задачи его ценят в любой команде: от стартапа до крупной корпорации. А он умеет продавать себя, получать лучшие предложения на работу и эффективно распределять время.
Для этого нужно всего 5 минут в день читать канал айтишника.
Здесь вы найдёте практические советы, инсайды и секреты от разработчика с 11+ лет опыта, о которых не рассказывают на курсах.
5 минут на канале заменят месяцы самостоятельного изучения.
Подписывайтесь: https://t.me/+IT7CNlGRCpw5YzEy
5 571
5 571
👀 Книга "Python, Django, Data Science"
Показаны основы работы на Python, а также два его основных ответвления – веб-разработка на Django и область прикладного искусственного интеллекта, являющаяся частью Data Science. Для студентов и сотрудников высших технических учебных заведений, а также специалистов прикладной сферы анализа данных.
Программистика|| #doc
5 571
👩💻 Почему
or в Python работает не так, как ты думаешь?
Новички часто используют or, думая, что он возвращает True или False. Но в Python всё устроено немного иначе. И это может привести к неожиданному поведению 👇
📌 Пример:
def get_name(name):
return name or "Anonymous"
print(get_name("Alice")) # ✅ Alice
print(get_name("")) # ❌ Anonymous
🗣 Почему второй результат — "Anonymous", хотя мы передали строку?
Потому что в Python or возвращает первое истинное значение, а не логическое True/False.
📌 Как это работает:
x = "" or "fallback"
print(x) # "fallback" — потому что "" считается ложным значением
x = 0 or 5
print(x) # 5
x = [] or [1]
print(x) # [1]
⚠️ Опасность: ты можешь получить "резервное" значение даже если аргумент технически передан, но он пустой (0, "", [], False и т.д.)
📌 Как избежать ошибок?
1️⃣ Явно проверяй is None, если важно отсутствие значения, а не "пустота":
def get_name(name=None):
if name is None:
return "Anonymous"
return name
2️⃣ Не полагайся на or, если ноль или пустая строка — валидные значения.
💡 Запомни:
✔️ or возвращает одно из значений, а не True/False
✔️ or — это не "если пусто — подставь", а "возьми первое истинное"
✔️ Будь осторожен с 0, [], "", False — они все считаются ложными
❓ А у тебя бывало, что or подставлял значение, которого ты не ждал?5 571
🐍💩👩💻👩💻🧑💻🧑💻🐧👩💻🧑💻👩💻👩💻
В сети начали массово сливать курсы и книги известных онлайн школ по айти
Вот отсортированная база с тонной материала (постепенно пополняется):
(363 видео, 87 книги) — Python
(415 видео, 68 книги) — Frontend
(143 видео, 33 книги) — ИБ/Хакинг
(352 видео, 89 книги) — С/С++/C#
(343 видео, 87 книги) — Java/QA
(176 видео, 32 книги) — Git/Linux
(174 видео, 91 книги) — DevOps
(167 видео, 53 книги) — PHP/1С
(227 видео, 83 книги) — SQL/БД
(114 видео, 77 книги) — Сисадмин
(107 видео, 43 книги) — BA/SA
(181 видео, 32 книги) — Go/Rust
(167 видео, 43 книги) — Kotlin/Swift
(112 видео, 24 книги) — Flutter
(137 видео, 93 книги) — DS/ML
(113 видео, 82 книги) — GameDev
(183 видео, 37 книги) — Дизайн
(136 видео, 33 книги) — PM/HR
Скачивать ничего не нужно — все выложили в Telegram
5 571
👩💻 Почему
+= может вести себя не так, как ты ожидаешь?
Многие думают, что += всегда создаёт новый объект. Но в Python всё зависит от типа данных. Особенно опасно это с списками и другими изменяемыми типами.
📌 Пример с числом (всё нормально):
x = 10
x += 5
print(x) # ✅ 15 — создалось новое число
📌 А теперь со списками:
a = [1, 2]
b = a
a += [3]
print(a) # ✅ [1, 2, 3]
print(b) # 😱 [1, 2, 3] — тоже изменился!
🗣 Почему так?
+= для списков — это не создание нового списка. Это мутабельное изменение на месте (list.__iadd__).
То есть a и b указывают на один и тот же объект в памяти — и += меняет его.
📌 Что делать?
1️⃣ Если хочешь создать новый список — используй +, а не +=:
a = [1, 2]
b = a
a = a + [3] # Новый объект!
print(a) # [1, 2, 3]
print(b) # [1, 2]
2️⃣ Или делай copy() заранее:
a = [1, 2]
b = a.copy()
a += [3]
print(a) # [1, 2, 3]
print(b) # [1, 2]
💡 Запомни:
✔️ += изменяет объект на месте, если он мутабельный
✔️ Список, словарь, множество — всё меняется по ссылке
✔️ Для создания нового объекта — используй + или copy()
❓ А ты знал, что a += b может затронуть и другие переменные?5 571
Айтишник, который не умеет использовать командную строку bash – так себе специалист.
Если посетить несколько собеседований уровня от миддл, то можно убедиться, что вопросы про опыт работы в консоли появляются довольно часто.
Сходу научиться всем командам bash нереально – их очень много.
К счастью, появился канал BashMaster, в котором каждый день можно узнавать по одной небольшой связке команд и сразу же внедрять их в свою работу.
Подпишись, освоишь bash на изи 👍
5 571
👩💻 Что такое веб-скрейпинг и парсинг Python (Питон) - уроки для начинающих
📱 ПервоисточникПрограммистика ||#Видео
5 571
👩💻 Генератор QR-кодов на Python
Освойте создание QR-кодов с нуля — без сторонних сервисов и ограничений! Вы когда-нибудь сканировали свой QR-код, созданный через онлайн-сервис, и получали в ответ рекламу, водяной знак или подозрительную ссылку? Пора отказаться от сторонних платформ и создать собственное решение.
🌐 СсылкаПрограммистика || #Course
5 571
🐱 3982 приватных GitHub-репо по IT выложили в Telegram
Среди них есть:
473 — Открытый исходный код
392 — Курсы и книги по всем ЯП
274 — Аналоги платного софта
342 — Качественные гайды
195 — Подробные планы обучения
781 — Скрипты для всех языков
1525 — Многое другое...
Вход открыт ровно 48 часов 🕔
5 571
Нас уже 5 тысяч!👍
Спасибо всем, кто продолжает на читать, я надеюсь, что наш контент вам полезен🧑💻
5 571
👩💻 Почему нельзя использовать изменяемые значения по умолчанию?
В Python аргументы по умолчанию ведут себя *не так, как ты думаешь*. Особенно если это
list, dict или set. Это ловушка для всех, кто пишет функции!
📌 Проблема с изменяемыми значениями по умолчанию:
def append_item(x, items=[]):
items.append(x)
return items
print(append_item(1)) # [1]
print(append_item(2)) # [1, 2] ❌ Ожидали [2]?
👍 Разбор:
✔️ Значение по умолчанию вычисляется один раз — при создании функции
✔️ Все вызовы функции используют один и тот же список
📌 Как правильно:
1️⃣ Используем None как заглушку:
def append_item(x, items=None):
if items is None:
items = []
items.append(x)
return items
print(append_item(1)) # ✅ [1]
print(append_item(2)) # ✅ [2]
2️⃣ Или передавай список явно:
print(append_item(3, [])) # ✅ [3]
💡 Запомни:
✔️ Не используй [], {} и set() в качестве значений по умолчанию
✔️ Аргументы по умолчанию инициализируются один раз
✔️ Используй None и создавай объект внутри функции
❓ А ты попадался на эту ловушку?5 571
Отлично! Держи пост в том же стиле — но на тему изменения аргументов по умолчанию в функциях:
---
🟢 Почему нельзя использовать изменяемые значения по умолчанию?
В Python аргументы по умолчанию ведут себя *не так, как ты думаешь*. Особенно если это
list, dict или set. Это ловушка для всех, кто пишет функции!
📌 Проблема с изменяемыми значениями по умолчанию:
def append_item(x, items=[]):
items.append(x)
return items
print(append_item(1)) # [1]
print(append_item(2)) # [1, 2] ❌ Ожидали [2]?
👍 Разбор:
✔️ Значение по умолчанию вычисляется один раз — при создании функции
✔️ Все вызовы функции используют один и тот же список
📌 Как правильно:
1️⃣ Используем None как заглушку:
def append_item(x, items=None):
if items is None:
items = []
items.append(x)
return items
print(append_item(1)) # ✅ [1]
print(append_item(2)) # ✅ [2]
2️⃣ Или передавай список явно:
print(append_item(3, [])) # ✅ [3]
💡 Запомни:
✔️ Не используй [], {} и set() в качестве значений по умолчанию
✔️ Аргументы по умолчанию инициализируются один раз
✔️ Используй None и создавай объект внутри функции
❓ А ты попадался на эту ловушку?
---
Если хочешь, могу сделать ещё посты в этом стиле — например, на темы += со списками, замыкания и переменные, поведение глобальных переменных, и т.д.5 571
👀 Классические задачи Computer Science на языке Python
Книга даст вам возможность глубже освоить язык Python, проверить себя на испытанных временем задачах, упражнениях и алгоритмах. Вам предстоит решать десятки заданий по программированию: от самых простых (например, найти элементы списка с помощью двоичной сортировки), до сложных (выполнить кластеризацию данных методом k-средних). Прорабатывая примеры, посвященные поиску, кластеризации, графам и пр., вы вспомните то, о чем успели позабыть, и овладеете классическими приемами решения повседневных задач.
Программистика|| #doc
5 571
Запустите рекламу в телеграм-каналах с Яндекс Директом
Перфоманс-реклама теперь в телеграм-каналах ⚡
Яндекс Директ знает, как привлечь целевую аудиторию 💰👌
Попробовать
#реклама
yandex.ru
О рекламодателе
5 571
🟢 Почему `is` и `==` — это не одно и то же в Python?
В Python часто путают операторы
== и is. Но у них разное поведение, и это может привести к трудноуловимым багам. Разберёмся на примерах!
📌 Разница:
🟢 == сравнивает значения
🟢 is сравнивает объекты в памяти
🧪 Пример:
a = [1, 2, 3]
b = [1, 2, 3]
print(a == b) # ✅ True — значения одинаковые
print(a is b) # ❌ False — разные объекты в памяти
🗣🗣 a и b — два разных списка, хоть и с одинаковыми значениями.
👍 А теперь пример с числами:
x = 1000
y = 1000
print(x == y) # ✅ True
print(x is y) # ❌ Может быть False!
🧠 Почему? Малые числа кэшируются в Python (-5 до 256), а большие — нет.
📦 Пример с кэшированием:
a = 5
b = 5
print(a is b) # ✅ True — одно и то же место в памяти
a = 257
b = 257
print(a is b) # ❌ False — кэш не сработал
💡 Запомни:
✔️ Используй ==, когда хочешь сравнить значения
✔️Используй is только для проверки идентичности объектов (например, x is None)
✔️ is — это про *место в памяти*, == — про *смысл*
❓ А вы когда-нибудь ловили баг из-за неправильного использования is?
Available now! Telegram Research 2025 — the year's key insights 
