Информатика ЕГЭ | Илья Андрианов | itpy 🧑‍💻
1.11K subscribers
269 photos
22 videos
19 files
650 links
По рекламе: @ilandroxxy

Шпаргалки: clck.ru/3FwqWt
📚 Наши курсы: clck.ru/3FwqYb

Разборы: clck.ru/3Fwqay
💬 Чатик: clck.ru/3FwqZa

📺 YouTube: clck.ru/3FwqbX

🙋‍♂️ Я автор: @ilandroxxy
Download Telegram
📎Объединение итерируемых объектов с помощью itertools.chain #tpy

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

↗️ Почему это круто?
itertools.chain позволяет объединять итерируемые объекты "на лету", экономя память и ускоряя обработку больших наборов данных. Особенно полезно, когда работаешь с объемными файлами или потоками данных.


Пример использования:
import itertools

list1 = [1, 2, 3]
list2 = ('a', 'b', 'c')
list3 = range(10, 13)

# Объединяем без создания новых списков
for item in itertools.chain(list1, list2, list3):
print(item, end=' ')


🪄Вывод:
1 2 3 a b c 10 11 12


Теперь ты можешь обходить все эти коллекции как один поток, не тратя лишнюю память 🚀

#⃣ Вся теория для ЕГЭ в одном месте
Информатика ЕГЭ | чатик itpy 🧑‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍11❤‍🔥2🔥2
📎Что такое enumerate() в Python и почему это удобно? #tpy

🪄 Функция enumerate() в Python - позволяет одновременно проходить по итерируемому объекту и получать индекс каждого элемента - очень удобно и читаемо.

↗️ Почему это полезно?
- Не нужно самостоятельно создавать счетчик
- Упрощает код при необходимости знать позицию элемента
- Особенно полезна при обработке списков, кортежей, строк и других итерируемых структур

Пример использования:

fruits = ['яблоко', 'банан', 'киви']

for index, fruit in enumerate(fruits):
print(f"{index}: {fruit}")


Вывод:
0: яблоко
1: банан
2: киви


Теперь мы можем работать с циклами ещё удобнее! 🚀

#⃣ Вся теория для ЕГЭ в одном месте
Информатика ЕГЭ | чатик itpy 🧑‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥123🔥3👍1
👩‍💻 Генераторы списков в Python #tpy

Это обычный способ создания списков через цикл for, но более лаконичный и читаемый.

🟣Обычный способ:
res = []
for i in range(10):
if i % 2 == 0:
res.append(i ** 2)
print(res) # [0, 4, 16, 36, 64]


🟣Через генератором списков:
res = [i ** 2 for i in range(10) if i % 2 == 0]
print(res) # [0, 4, 16, 36, 64]



📌 Синтаксис:
[выражение for переменная in последовательность if условие]


💬 Читается как:
«Добавь выражение в список для каждого элемента, если выполняется условие»



🚩 Примеры для ЕГЭ:

🟣Все нечётные числа от 1 до 20:
[x for x in range(1, 21) if x % 2 != 0]


🟣Строки в верхнем регистре:
[s.upper() for s in ['питон', 'егэ', 'код']]


🟣Цифры от 0 до 9, кроме 3 и 7:
[x for x in range(10) if x not in (3, 7)]



💭 Когда использовать?

🕓для компактного создания списков
🕓когда нужна фильтрация (if)
🕓при преобразовании значений

💡 Важно: генераторы не заменяют циклы везде. Но для быстрого и чистого кода они очень полезны.


#⃣ Вся теория для ЕГЭ в одном месте
Информатика ЕГЭ | чатик itpy 🧑‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
5❤‍🔥33🔥2
🚀 Почему нельзя использовать is для сравнения строк и чисел в Python? #tpy

💻 is - это оператор идентичности, он проверяет, ссылаются ли переменные на один и тот же объект в памяти. А == - оператор равенства, сравнивает значения.

🔍 Для небольших чисел и коротких строк Python часто использует кэш, поэтому is может иногда возвращать True.
Но для больших чисел или длинных строк это не гарантировано - объекты могут быть разными.


Пример с кодом:
a = 256
b = 256
print(a is b) # True (кэш)

x = "hello"
y = "hello"
print(x is y) # True (кэш)

a = 1000
b = 1000
print(a is b) # False (разные объекты)


⚠️ Используйте == для сравнения значений, is - только чтобы проверить, ссылаются ли переменные на один объект!

#⃣ Вся теория для ЕГЭ в одном месте
Информатика ЕГЭ | чатик itpy 🧑‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥5🔥32
📎 Что такое файл .env, и зачем он нужен? #tpy

Если вы когда-либо работали с проектами на Python, Node.js или других языках, то, скорее всего, сталкивались с файлами .env. Но что они из себя представляют?

Файл .env - это секретный шкафчик для хранения переменных окружения!
В нем хранятся важные настройки: ключи API, пароли, настройки базы данных и другие конфиденциальные данные.


🔒 Почему это удобно?
- Безопасность: секретные данные не хранятся прямо в коде, их легко исключить из системы контроля версий.
- Гибкость: можно легко менять настройки между разными окружениями - тестовым, продакшеном и локальной разработкой.
- Удобство: все важные переменные сосредоточены в одном месте, их легко найти и обновить.


🚀 .env - это безопасный способ хранения конфиденциальной информации, если он используется локально и не попадает в публичные источники.
⚠️ Ведь его публичное размещение - серьёзная уязвимость!


#⃣ Вся теория для ЕГЭ в одном месте
Информатика ЕГЭ | чатик itpy 🧑‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
24❤‍🔥2🔥2
📂 Как открывать файлы в Python на ЕГЭ? #tpy
Примеры кодов для задач 9, 17, 24, 26, 27 из ЕГЭ:


0⃣
for M in open('9.txt'):
M = [int(i) for i in M.split()]
print(M)

▶️ Читаем файл построчно, каждую строку разбиваем на числа и сразу печатаем.


1⃣7⃣
M = [int(i) for i in open('17.txt')]
print(M)

▶️ Читаем все строки файла и превращаем в список чисел.


2⃣4⃣
s = open('24.txt').readline()
▶️ Считываем только первую строку файла.



2⃣6⃣

ans = []
for M in open('26.txt'):
M = [int(i) for i in M.split()]
ans.append(M)
▶️ Сохраняем каждую строку как список чисел, а потом собираем всё в общий список.



2⃣7⃣

f = open('27.А.txt').readlines()[1:]
for M in f:
M = [float(i.replace(',','.')) for i in M.split()]
x, y = M[0], M[1]
print(x, y)

▶️ Пропускаем первую строку, заменяем запятые на точки и превращаем в числа с плавающей точкой.


#⃣ Вся теория для ЕГЭ в одном месте
Информатика ЕГЭ | чатик itpy 🧑‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍4❤‍🔥2🔥21