Python Ready | Программирование
23K subscribers
768 photos
53 videos
393 links
Авторский канал по разработке на Python.
Ресурсы, гайды, задачи, шпаргалки.
Информация ежедневно пополняется!

Автор: @energy_it

РКН: https://clck.ru/3NJEEh

Реклама на бирже: https://telega.in/c/python_ready
加入频道
А вы знали про возможность ошибки при изменении списка во время итерации?

Как раз сегодня разберем распространенную ошибку Python — изменение списка во время итерации. Эта ловушка может привести к пропущенным элементам или неожиданным результатам.

Когда вы изменяете список в процессе итерации, Python изменяет индексы элементов, что может пропускать некоторые значения:
nums = [1, 2, 3, 4]
for num in nums:
if num % 2 == 0:
nums.remove(num)

print(nums) # [1, 3]


Происходит это из-за того, что удаление изменяет длину списка, а цикл перескакивает через элементы.

Чтобы избежать пропусков, итерируйтесь по копии списка:
nums = [1, 2, 3, 4]
for num in nums[:]: # Создаем копию
if num % 2 == 0:
nums.remove(num)

print(nums) # [1, 3]


А иногда проще создать новый список с нужными элементами:
nums = [1, 2, 3, 4]
nums = [num for num in nums if num % 2 != 0]

print(nums) # [1, 3]


Но вот если работать со вложенными списками, прямое изменение элементов также может привести к неожиданным результатам:
matrix = [[1, 2], [3, 4]]
for row in matrix:
row.append(0)

print(matrix) # [[1, 2, 0], [3, 4, 0]]


🔥 Поэтому лучше работайте с копиями или используйте безопасные методы, такие как списковые включения)

👉 Python Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥81
This media is not supported in your browser
VIEW IN TELEGRAM
Прикольный сайт, где можно генерировать тестовые данные для своих нужд

Mockaroo — онлайн-инструмент для генерации тестовых данных в различных форматах (JSON, CSV, SQL и др.), идеально подходящий для тестирования приложений и прототипирования

👉 Python Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥5🤝1
Что будет в консоли?
Anonymous Quiz
24%
A
29%
B
8%
C
39%
D
👍10🔥5
👩‍💻 Освежим память о методах словарей!

Давайте вспомним один из важных типов данных в Python — словарь. Он хранит данные в виде пар ключ–значение, что делает его удобным для хранения информации, например, о пользователе.

В этой шпаргалке разберём полезные методы словарей, которые позволяют эффективно управлять данными.

👉 Python Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥6🤝4
😂

С добрым утром! ☕️
Please open Telegram to view this post
VIEW IN TELEGRAM
😁71🔥12👍4
Сейчас обсудим с вами исключения и управление ошибками в питончике

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

1. Обработка исключений с try-except — ключевой способ предотвращения аварийного завершения программы:
try:
result = 10 / 0
except ZeroDivisionError:
result = None
print(result) # None


2. Использование finally — Блок finally выполняется всегда, даже если произошло исключение:
try:
f = open("example.txt", "r")
except FileNotFoundError:
print("File not found")
finally:
print("Cleaning up") # Чистим ресурсы, если нужно


3. Создание пользовательского исключения — определите свой класс исключения для кастомных ошибок:
class CustomError(Exception):
pass

try:
raise CustomError("An error occurred")
except CustomError as e:
print(e) # An error occurred


👉 Python Ready | #техсобес
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥7🤝1
🖥 Разберем работу с аргументами

В этом посте мы рассмотрим упаковку и распаковку аргументов с помощью * и **, их применение для списков, словарей и функций. Аргументы очень часто используются в кодинге, рекомендую их изучить!

- Упаковка аргументов с *args
- Упаковка именованных аргументов с **kwargs
- Распаковка словарей


👉 Python Ready | #гайд
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍10🤝5
Множества в Python для начинающих
#новичкам

Сегодня разберемся, как работать с множествами в Питоне.
Это коллекции уникальных элементов без порядка. Они полезны, если нужно избавиться от повторов.

Для создания множества, достаточно просто написать:
my_set = {1, 2, 3, 4}


Но чтобы добавить элементы, используем add() для одного элемента и update() для нескольких:
my_set.add(5)
my_set.update([6, 7, 8])


Для удаления элемента используем remove() (с ошибкой, если элемент отсутствует) или безопасный discard():
my_set.remove(5)
my_set.discard(9)


Множества поддерживают операции пересечения, объединения и разности:
set1 = {1, 2, 3}
set2 = {3, 4, 5}

print(set1 & set2) # Пересечение: {3}
print(set1 | set2) # Объединение: {1, 2, 3, 4, 5}
print(set1 - set2) # Разность: {1, 2}}


🔥 Такие простые изменения помогут вам сделать код более эффективным и избежать лишних повторений.

👉 Python Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥11🤝2
This media is not supported in your browser
VIEW IN TELEGRAM
☕️ Вот с чего точно стоит начинать изучение проги:

Roadmap.sh — сайт, на котором собран план обучения для всех IT направлений. Все темы схематично отображены в нужной последовательности для поэтапного изучения.

👉 Python Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥4🤝2
Что выведет консоль?
Anonymous Quiz
23%
A
38%
B
36%
C
3%
D
👍16🔥9
This media is not supported in your browser
VIEW IN TELEGRAM
👨‍💻 Google представила ИИ для создания из текста 3D-уровней для игр

Google DeepMind анонсировала Genie 2 — искусственный интеллект, который превращает текстовые описания в полноценные 3D-окружения.

Вот основные возможности:

Генерация миров:
От густых лесов до мегаполисов — модель создаёт локации любого типа.

Интерактивные объекты:
Сгенерированные объекты обладают физическими свойствами, такими как гравитация и освещение.

Анимация персонажей:
Реалистичные движения и поведение NPC упрощают создание сложных игровых сценариев.

👉 Python Ready | #новость
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥7🤝2