📱 Конструкция eval() в Python #tpy📓 Многие сталкиваются с задачами, где нужно вычислить выражение, заданное в виде строки, например: "2+3*4" или " (10 - 3) ** 2".🚩 В таких случаях помогает функция eval()Она "преобразует" строку в код и выполняет его, возвращая результат.⏺ Примеры использования: expression = "2+3*4" result = eval(expression) print(result) # Выведет 14expression = " (10 - 3) ** 2" result = eval(expression) print(result) # Выведет 49expression = "( 2+3*4 ) * 3" result = eval(expression) print(result) # Выведет 42⚠️ Важно помнить: eval() — мощный инструмент, но его использование опасно, если строка содержит неподтвержденный или вредоносный код. На экзамене обычно не проблема, а в реальной разработке лучше избегать eval() без необходимости.✔️В контексте ЕГЭ eval() помогает быстро выполнять вычисления из строковых выражений, что удобно при решении задачи под номером 24.🚀 Примечание: eval() — ваш быстрый помощник, но применять его нужно с осторожностью!#⃣ Вся теория для ЕГЭ в одном месте➡ Программирование на Python | itpy 💻
Программирование на Python | itpy 💻
@data_analyst_itpy
Канал по подготовке к ЕГЭ: t.me/informatika_kege_itpyПо рекламе можно писать сюда: @igadz_iga
Похожие каналы
Все →Последние посты
👩💻 Повторяем срезы в Python #tpyСрезы (slices) - это мощный инструмент в Python, позволяющий взять часть списка или строки, указав, что именно тебе нужно. Общий вид срезов в Python:A[начало:конец:шаг]🚩 начало — индекс, С КОТОРОГО начинаем (включается).🚩 конец — индекс, ДО КОТОРОГО берём (не включается).🚩 шаг — через сколько берём элементы (по умолчанию 1).🚩Пример со строкой:s = "информатика"print(s[0:5]) # 'инфор' (с 0 по 4 индекс)print(s[::-1]) # 'акитамрофни' (разворот строки)print(s[2:7]) # 'форма' (с 2 по 6 индекс)print(s[:4]) # 'инфо' (с начала до 3 индекса)print(s[-4:]) # 'тика' (последние 4 буквы)print(s[::2]) # 'ифрмата' (каждая вторая буква)🚩Пример со списком:nums = [4, 8, 15, 16, 23, 42]print(nums[1:4]) # [8, 15, 16] (с 1 по 3 индекс)print(nums[-3:]) # [16, 23, 42] (последние 3 элемента)print(nums[:3]) # [4, 8, 15] (первые 3 элемента)print(nums[::-1]) # [42, 23, 16, 15, 8, 4] (разворот списка)print(nums[::2]) # [4, 15, 23] (каждый второй элемент)🚩Как запомнить? 🟠 ЛЕВАЯ граница включается, ПРАВАЯ не включается.🟠 Откуда : докуда : шаг.🟠 шаг = -1 — идёшь в обратную сторону.🟠Работает с списками, строками, кортежами📙Где встречаются срезы на ЕГЭ/ОГЭ по информатике:🚩 Номер 5 — работа с массивами (списки, строки).🚩 Номер 8 — работа с текстовыми данными.🚩 Номер 9 — анализ и обработка данных, перебор подстрок.а также 13, 14, 17 и других номерах#⃣ Вся теория для ЕГЭ в одном месте➡ Программирование на Python | itpy 💻
📎 Методы строк в Python! #tpy🚘 Умение работать со строками пригодится вам при решении задач под номерами - 12, 24 📱 Топ-20 методов, которые помогут быть очень полезны:1️⃣ upper() - переводит строку в верхний регистр. "hello".upper() → "HELLO"2️⃣ lower() - переводит строку в нижний регистр. "HELLO".lower() → "hello"3️⃣ capitalize() - делает первую букву заглавной. "hello".capitalize() → "Hello"4️⃣ title() - каждое слово с заглавной буквы. "hello world".title() → "Hello World"5️⃣ strip() - удаляет пробелы с обоих концов. "hello".strip() → "hello"6️⃣ lstrip() / rstrip() - удаляет пробелы слева/справа. 7️⃣ replace(old, new) - заменяет подстроку. "abc".replace("a", "x") → "xbc"8️⃣ split(sep) - разбивает строку по разделителю. "a,b,c".split(",") → ["a", "b", "c"]0⃣ join(list) - собирает строку из списка. ",".join(["a", "b", "c"]) → "a,b,c"🔟 startswith(str) / endswith(str) - проверяет начало/конец строки. "hello".startswith("he") → True1️⃣1️⃣ find(sub) - ищет подстроку и возвращает индекс. "hello".find("ll") → 21️⃣2️⃣ count(sub) - считает количество вхождений. "hello".count("l") → 21️⃣3️⃣ isdigit() - проверяет, состоит ли строка из цифр. "123".isdigit() → True1️⃣4️⃣ isalpha() - проверяет, только ли буквы. "abc".isalpha() → True1️⃣5️⃣ isalnum() - буквы или цифры без пробелов. "a1".isalnum() → True1️⃣6️⃣ islower() / isupper() - проверяет регистр. 1️⃣7️⃣ zfill(width) - дополняет нулями слева. "7".zfill(3) → "007"1️⃣8️⃣ format() - подставляет значения в строку. "{}".format(5) → "5"1️⃣0⃣ f-строки (Python 3.6+) - удобный формат. f"{5}" → "5"2️⃣0️⃣ in – проверка наличия подстроки. "a" in "abc" → True#⃣ Вся теория для ЕГЭ в одном месте➡ Программирование на Python | itpy 💻

👩💻 Использования f-строк в python #tpyЕсли раньше для подстановки переменных в строку мы писали:"Привет, {}!".format(name)то теперь с f-строками можно проще:name = "Андрей"print(f"Привет, {name}!") # Привет, Андрей!🚩 Почему f-строки удобны:🕓 Код становится короче.🕓 Сразу видно, какие переменные подставляются.🕓 Можно вставлять даже выражения:a = 5b = 3print(f"{a} + {b} = {a + b}") # 5 + 3 = 8👩💻 Пример:user = "Андрей"action = "покупка"log = f"Пользователь {user} зашел на сайт и выполнил действие: {action}"print(log) # Пользователь Андрей зашел на сайт и выполнил действие: покупка💡 Запомни:Чтобы использовать f-строку, ставь f перед кавычками и указывай переменные в {}.#⃣ Вся теория для ЕГЭ в одном месте➡ Программирование на Python | itpy 💻
📂 Как открывать файлы в Python? #tpyПримеры кодов для задач 9, 17, 24, 26, 27 из ЕГЭ:0⃣for M in open('test.txt'): M = [int(i) for i in M.split()] print(M)▶️ Читаем файл построчно, каждую строку разбиваем на числа и сразу печатаем.1⃣7⃣M = [int(i) for i in open('test.txt')]print(M)▶️ Читаем все строки файла и превращаем в список чисел.2⃣4⃣s = open('test.txt').readline()▶️ Считываем только первую строку файла.2⃣6⃣ans = []for M in open('test.txt'): M = [int(i) for i in M.split()] ans.append(M)▶️ Сохраняем каждую строку как список чисел, а потом собираем всё в общий список.2⃣7⃣f = open('test.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)▶️ Пропускаем первую строку, заменяем запятые на точки и превращаем в числа с плавающей точкой.#⃣ Вся теория для ЕГЭ в одном месте➡ Программирование на Python | itpy 💻

👩💻 Генераторы списков в 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 🧑💻
🚀 Типы данных в Python, которые считаются структурами данных #tpy🔍- Это те типы, которые позволяют хранить и организовывать коллекции элементов.👩💻 Основные структуры данных в Python: 📎 list - это изменяемый упорядоченный список. Можно добавлять, удалять, менять элементы. Например: fruits = ['яблоко', 'банан', 'апельсин'] 📎📎 tuple - неизменяемая последовательность. Отлично подходит, когда нужно зафиксировать набор данных: coordinates = (10, 20) 📎📎 set - множество уникальных элементов. Быстро искать, удалять дубликаты: unique_numbers = {1, 2, 3} 📎📎 dict - словарь, отображение ключей на значения. Очень удобно для хранения пар "ключ-значение": person = {'имя': 'Анна', 'возраст': 25} 📎❄️ frozenset - неизменяемое множество, его нельзя менять после создания. Используется там, где нужен "жёсткий" набор данных. frozenset([1, 2, 3, 4]) ➡️ frozenset({1, 2, 3, 4})🔼🔽 deque - двусторонняя очередь из модуля collections. Быстро добавлять и удалять элементы с обоих концов: from collections import deque ⚙️ d = deque() - инициализировать элементами из любого итерируемого объекта (список, кортеж и т. д.). Технологии телеграмма не стоят на месте, поэтому обращаю ваше внимание, что мы часто используем инструмент "цитата". Кликайте на цитату выше, чтобы открыть текст для чтения 👆#⃣ Вся теория для ЕГЭ в одном месте➡ Информатика ЕГЭ | чатик itpy 🧑💻
📂 Как открывать файлы в 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 🧑💻
📎 Что такое файл .env, и зачем он нужен? #tpyЕсли вы когда-либо работали с проектами на Python, Node.js или других языках, то, скорее всего, сталкивались с файлами .env. Но что они из себя представляют?✨ Файл .env - это секретный шкафчик для хранения переменных окружения!В нем хранятся важные настройки: ключи API, пароли, настройки базы данных и другие конфиденциальные данные. 🔒 Почему это удобно? - Безопасность: секретные данные не хранятся прямо в коде, их легко исключить из системы контроля версий. - Гибкость: можно легко менять настройки между разными окружениями - тестовым, продакшеном и локальной разработкой. - Удобство: все важные переменные сосредоточены в одном месте, их легко найти и обновить.🚀 .env - это безопасный способ хранения конфиденциальной информации, если он используется локально и не попадает в публичные источники.⚠️ Ведь его публичное размещение - серьёзная уязвимость!#⃣ Вся теория для ЕГЭ в одном месте➡ Информатика ЕГЭ | чатик itpy 🧑💻
🚀 Почему нельзя использовать is для сравнения строк и чисел в Python? #tpy💻 is - это оператор идентичности, он проверяет, ссылаются ли переменные на один и тот же объект в памяти. А == - оператор равенства, сравнивает значения.🔍 Для небольших чисел и коротких строк Python часто использует кэш, поэтому is может иногда возвращать True.Но для больших чисел или длинных строк это не гарантировано - объекты могут быть разными.❌ Пример с кодом:a = 256b = 256print(a is b) # True (кэш)x = "hello"y = "hello"print(x is y) # True (кэш)a = 1000b = 1000print(a is b) # False (разные объекты)⚠️ Используйте == для сравнения значений, is - только чтобы проверить, ссылаются ли переменные на один объект!#⃣ Вся теория для ЕГЭ в одном месте➡ Информатика ЕГЭ | чатик itpy 🧑💻