fa
Feedback

فریب کلاهبرداران را نخورید! تل‌متریو این کانال‌ها را شناسایی و برچسب‌گذاری می‌کند 👉 برای مشاهده برچسب، اشتراک تهیه کنید

Программистика

Программистика

کانال بسته

Лучший канал про python Ссылка для друга: https://t.me/+Ai6ughKtf5g2ZmFi Купить рекламу: https://telega.in/c/+Ai6ughKtf5g2ZmFi Админ: @JeyRahol По рекламе: @ReivuManager

نمایش بیشتر
5 799
مشترکین
+3224 ساعت
+187 روز
-4030 روز
آرشیو پست ها
🔁 Почему нельзя менять список во время итерации (и как это обойти) Многие новички пишут цикл
for item in my_list
и внутри пытаются удалять или добавлять элементы. Кажется логичным: «нашёл ненужное — удали». Но Python так не работает. Изменяя список во время итерации, вы ломаете внутренний механизм итератора. Результат — пропущенные элементы, исключения или странное поведение. 🧱 Проблема: что происходит под капотом Когда вы пишете
for x in lst:
, Python создаёт итератор, который запоминает текущую позицию по индексу. Если внутри цикла вы удаляете элемент, все последующие элементы сдвигаются влево, а итератор продолжает двигаться вперёд. В итоге часть элементов пропускается.
lst = [1, 2, 3, 4, 5]
for x in lst:
    if x % 2 == 0:
        lst.remove(x)
print(lst)  # [1, 3, 5] — может показаться, что работает
Но попробуйте другой список:
lst = [2, 4, 6, 8, 10]
for x in lst:
    if x % 2 == 0:
        lst.remove(x)
print(lst)  # [4, 8] — где остальные?
Потому что после удаления 2, список сдвинулся, итератор перешёл к следующему индексу, где оказалось 6 (изначальное 4 было пропущено). Аналогично с добавлением — можно уйти в бесконечный цикл.
lst = [1, 2, 3]
for x in lst:
    lst.append(x)  # бесконечный цикл
🧠 Как правильно: 3 безопасных способа 1. Итерируйтесь по копии     Самый простой способ — создать копию списка и итерироваться по ней, а изменения вносить в оригинал.
   lst = [1, 2, 3, 4, 5]
   for x in lst[:]:  # копия
       if x % 2 == 0:
           lst.remove(x)
   print(lst)  # [1, 3, 5]
Или через
list(lst)
или
.copy()
. 2. Создавайте новый список     Часто проще собрать новый список из нужных элементов, чем мутировать старый.
   lst = [1, 2, 3, 4, 5]
   lst = [x for x in lst if x % 2 != 0]
   print(lst)  # [1, 3, 5]
      Это самый идиоматичный способ. 3. Итерируйтесь в обратном порядке     Если нужно удалять элементы, можно идти с конца. Тогда сдвиги не влияют на ещё не пройденные элементы.
   lst = [1, 2, 3, 4, 5]
   for i in range(len(lst)-1, -1, -1):
       if lst[i] % 2 == 0:
           del lst[i]
   print(lst)  # [1, 3, 5]
   🧪 Что насчёт словарей? Со словарями ещё строже: изменение размера во время итерации вызывает
RuntimeError
.
d = {'a': 1, 'b': 2}
for k in d:
    d['c'] = 3  # RuntimeError: dictionary changed size during iteration
Решение — итерироваться по копии ключей:
for k in list(d):
. Программистика|| #article

NVIDIA представила NOOA: фреймворк для разработки ИИ-агентов в рамках одного Python-класса Компания NVIDIA выпустила открытый
NVIDIA представила NOOA: фреймворк для разработки ИИ-агентов в рамках одного Python-класса Компания NVIDIA выпустила открытый фреймворк NOOA (Object-Oriented Agents), который призван решить проблему фрагментации в разработке ИИ-агентов. Платформа объединяет разрозненные элементы инфраструктуры — шаблоны промптов, схемы инструментов, функции обратного вызова (callbacks) и графы рабочих процессов — в единый класс Python. Проект передан в консорциум Open Secure AI Alliance для совместного развития открытых стандартов безопасности в сфере искусственного интеллекта. ➡️ Читать полностью Программистика || #article

NVIDIA представила NOOA: фреймворк для разработки ИИ-агентов в рамках одного Python-класса Компания NVIDIA выпустила открытый
NVIDIA представила NOOA: фреймворк для разработки ИИ-агентов в рамках одного Python-класса Компания NVIDIA выпустила открытый фреймворк NOOA (Object-Oriented Agents), который призван решить проблему фрагментации в разработке ИИ-агентов. Платформа объединяет разрозненные элементы инфраструктуры — шаблоны промптов, схемы инструментов, функции обратного вызова (callbacks) и графы рабочих процессов — в единый класс Python. Проект передан в консорциум Open Secure AI Alliance для совместного развития открытых стандартов безопасности в сфере искусственного интеллекта. ➡️ Читать полностью Программистика || #article

Все о структурах данных в Python для начинающих Структуры данных — это фундамент Python и основа любой эффективной программы.
Все о структурах данных в Python для начинающих
Структуры данных — это фундамент Python и основа любой эффективной программы. Без понимания списков, кортежей, множеств и словарей невозможно писать чистый, логичный и производительный код. В курсе вы разберёте все основные структуры данных в Python, их разновидности и назначение, научитесь использовать методы, операторы и генераторы.
🌐 Ссылка
Программистика || #Course

⏰ Библиотека Python: Arrow Arrow — это интуитивная библиотека для работы с датами и временем, предлагающая простой API для со
⏰ Библиотека Python: Arrow Arrow — это интуитивная библиотека для работы с датами и временем, предлагающая простой API для создания, форматирования и манипуляции датами. Она поддерживает часовые пояса, человекочитаемые интервалы и значительно упрощает код по сравнению со стандартным datetime. ✔️ Установка:
pip install arrow
🐱 Ссылка на репозиторий Программистика|| #Library

Micro REPL 💻 Micro-REPL обладает следующими функциями: ✅Терминал для доступа к интерактивной оболочке MicroPython. ✅Файловый
+1
Micro REPL 💻 Micro-REPL обладает следующими функциями:
✅Терминал для доступа к интерактивной оболочке MicroPython. ✅Файловый менеджер для хранения файлов MicroPython. ✅Интеллектуальный редактор кода с поддержкой синтаксиса Python и автодополнением.
🌐 Ссылка
Программистика || #Ресурсы

Совместимы ли python 2 и три?
Anonymous voting

👩‍💻 Python-библиотеки для сисадмина Если ты автоматизируешь серверы, сети и рутину, вот набор библиотек, который реально пр
👩‍💻 Python-библиотеки для сисадмина Если ты автоматизируешь серверы, сети и рутину, вот набор библиотек, который реально пригодится:
🔴paramiko — SSH, удалённые команды, копирование файлов. 🔵psutil — нагрузка CPU, RAM, диски, процессы. 🔴requests / httpx — работа с API и веб-сервисами. 🔵pyyaml — удобные конфиги в YAML. 🔴pydantic — валидация конфигов и входных данных. 🔵rich — красивый вывод в терминале. 🔴loguru — простые и удобные логи. 🔵fabric — выполнение команд на нескольких серверах. 🔴dnspython — DNS-проверки. 🔵watchdog — слежение за файлами и директориями.
Что поставить первым:
pip install paramiko psutil requests rich pydantic pyyaml loguru
Этого набора уже хватает для большинства админских скриптов: мониторинг, бэкапы, SSH-автоматизация, обработка конфигов и API-интеграции. Программистика || #Library

Вопрос от подписчика: Почему Python 2 и 3 несовместимы? Потому что Python 3 — это не “чуть обновили”, а почти пересобрали язы
Вопрос от подписчика: Почему Python 2 и 3 несовместимы? Потому что Python 3 — это не “чуть обновили”, а почти пересобрали язык заново. В нём поменяли вещи, на которых держался старый код: строки стали вести себя по-другому, Unicode сделали нормой, print превратился в функцию, а часть старого синтаксиса просто выкинули. P.S // Если у вас тоже есть вопросы, не стесняйтесь задавать их комменратиях Программистика || #вопрос_ответ

⚠️ Внимание: Опубликована слитая недавно База из 1000+ топовых курсов и материалов для айтишников Отсортировали их для вашего удобства и выложили в телеграм-каналы по категориям: 🤖 Нейросети – 855+ материалов 🖥 Python — 1558+ материалов 👩‍💻 Frontend — 1241+ материалов 👩‍💻 Backend — 1095+ материалов ⚙️ Программы — 978+ материалов 📚 Книги по IT — 779+ материалов ⌛️ Ссылки будут активны 48 часов, сохрани себе, чтобы не потерять!

Программирование на Python с нуля за 8 часов
📱 Первоисточник
Программистика|| #video

Хитрости которые экономят время ⌨️ В программировании важны не только знания языка, но и привычки, которые помогают писать ко
Хитрости которые экономят время ⌨️ В программировании важны не только знания языка, но и привычки, которые помогают писать код быстрее и аккуратнее. Хороший разработчик думает не только о том, как код написать, но и о том, как потом его читать, тестировать и дорабатывать. Один из самых полезных приёмов, это не повторять один и тот же код. Если фрагмент используется несколько раз, его лучше вынести в функцию, модуль или компонент. Так код становится чище и проще в поддержке. Ещё один важный подход, это быстро проверять идеи на практике. Иногда лучше сначала собрать простой рабочий вариант, а уже потом улучшать его. Это помогает не тратить время на лишнюю сложность. Очень помогает и грамотная отладка. Когда что то идёт не так, полезно смотреть логи, значения переменных и стек вызовов. Часто это быстрее, чем пытаться угадать причину ошибки. И, пожалуй, главный секрет в том, чтобы писать код проще. Чем понятнее структура, имена и логика, тем легче с ним работать потом. Программистика|| #article

Python bly*t Программистика || #Мемы

Продвинутые алгоритмы на Python Этот курс посвящён ключевым алгоритмам на графах и их практической реализации на языке Python. Вы научитесь находить кратчайшие пути, строить минимальное остовное дерево и вычислять максимальный поток, а также применять эти алгоритмы на практике.
🌐 Ссылка
Программистика || #Course

🧠 Базы данных на Python и ИИ Это практическое руководство по работе с данными в экосистеме Python от хранения информации и S
🧠 Базы данных на Python и ИИ
Это практическое руководство по работе с данными в экосистеме Python от хранения информации и SQL-запросов до аналитики, оптимизации и построения моделей машинного обучения. Книга знакомит читателя с SQLite, PostgreSQL, MySQL, MongoDB, SQLAlchemy и pandas, показывая, как эти инструменты применяются в реальных проектах. Большая часть материала состоит из готовых примеров кода с подробными пояснениями. Отдельное внимание уделено обработке больших объемов данных, оптимизации производительности, потоковой обработке, эффективному использованию памяти и построению аналитических ИИ-моделей
Программистика || #doc

Проходила я пару лет тому назад собеседование в одной фирме. Меня спросили: - Как написать скрипт для переименования файлов в папке? И я, не долго думая, ответила: - Ну, это легко! Нужно просто взять файл, открыть его, посмотреть на него строго, сказать: "Теперь ты Петя!" и сохранить! Интервьюер немного замялся, а потом говорит: - А если файлов тысяча? Я задумалась и говорю: - Тогда надо поставить их в ряд и начать перекличку! На этом моменте интервьюер начал улыбаться, а я добавила: - Но если серьёзно, я могу написать код, просто думала, что вы хотите креативный подход! На этом меня взяли на работу, но до сих пор в офисе все файлы называют Петями. Программистика

Пишем кроссплатформенные приложения на Python: погружение в Kivy Kivy — это фреймворк, предназначенный для кроссплатформенной
Пишем кроссплатформенные приложения на Python: погружение в Kivy Kivy — это фреймворк, предназначенный для кроссплатформенной разработки приложений на Python. Вы точно не найдете его в топах самых популярных и обсуждаемых инструментов, потому что проект развивается медленно, имеет не самый широкий и современный набор средств верстки интерфейса, а также плохо оптимизирован для сборки ПО. ➡️ Читать статью Программистика || #article

статья