питончик
161 subscribers
4 links
Основы Python в микротемах от @eleday
Download Telegram
Channel created
Канал на стадии сборки. Пока может выглядеть как обрывки знаний, но в итоге должна сложиться цельная картинка. Есть уклон в ЕГЭ

Этот канал создан, чтобы изучить самые основы Python. Я автор проекта @eleday (YouTube), рассказываю то, что понимаю сам

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

Теория разбита на микротемы

Я рассказываю в основном теорию. Чтобы всё понять, нужно практиковаться — писать код
❤‍🔥4🤝2
Математические операции

% — деление с остатком (остаток от деления)
// — целочисленное деление
** — возведение в степень
/ — обычное деление


% 10 — взять последную цифру десятиричного числа

4738 % 10 = 8
57370 % 10 = 0


// 10 — обрезать последнюю цифру десятиричного числа

477284 // 10 = 47728
48 // 10 = 4
🔥2❤‍🔥1
Одно или два равно

Когда объявляешь переменную пишешь одно равно

a = 3

Когда сравниваешь значения — два
Чтобы питон не путался где объявление, где сравнение

if a == 2
🔥2
Перевод в двоичную систему

bin(n)[2:]

Подробнее про [2:]
🔥3
Перевод в другие системы счисления

n = число
d_n = n
s = ''
base = основание системы счисления
while n > 0:
s = s + str(d_n % base)
d_n = d_n // base
s = s[::-1]

Давай по шагам
- d_n создаем, чтобы не менять начальный n, вдруг еще пригодится
- s — строка, потому что питон умеет работать только с десятичными числами. Приходится хранить число в виде строки
- Вспомним алгоритм ручного перевода в системы счисления
1. Делим число на основание СС (системы счисления)
2. Получаем остаток и частное
3. Остаток записываем, а частное опять делим на основание СС
4. В какой-то момент частное станет меньше остатка. Тогда следующее частное будет равно нулю
5. В этот момент заканчиваем деление и выписываем остатки снизу вверх — получается наше число в нужной СС

- в коде мы делаем то же самое
1. Берем исходное число
2. Берем остаток от деления на основание СС (base) и записываем его в строку
3. Получаем целую часть от деления на основание СС — частное, которым будем работать дальше (d_n = d_n // base)
4. Повторяем это действие, пока частное будет больше нуля. Когда станет равно нулю — заканчиваем
5. В s мы выписывали все остатки. Теперь осталось их только перевернуть. Это делается s = s[::-1]

Теперь в строке s лежит число n в СС с основанием base

Подробнее про [::-1] (переворот строки)
🔥4
Подсчет количества символов в строке

Можно посчитать количество всех символов (длину строки с помощью функции len (от слова length))
len('abc123') = 6

a = 's3'
len(a) = 2

Можно количество конкретных символов строка.count(подстрока)

'123123451'.count('1') = 3
'123123451'.count('12') = 2
a = 'aaaaaa'
a.count('a') = 6
🔥3
Про срезы 1

bin — функция для перевода числа в двоичную систему. Но в питоне нет настоящих двоичных чисел, поэтому он добавляет в начало строки обозначение 0b
[2:] — срез. Эта штука позволяет отрезать от строки первые два символа. Если быть точнее она возвращает новую строку, которая начинается с 3 символа (с индексом 2 (индексы идут с 0))
🔥3
питончик
Про срезы 1 bin — функция для перевода числа в двоичную систему. Но в питоне нет настоящих двоичных чисел, поэтому он добавляет в начало строки обозначение 0b [2:] — срез. Эта штука позволяет отрезать от строки первые два символа. Если быть точнее она возвращает…
Про срезы 2

Срезы позволяют не только отрезать начало, но и конец и менять шаг. Это похоже на range, который принимает (start, stop, step), то есть число, с которого надо начать, число каким надо закончить (не доходя до него) и шаг, с которым надо идти
Также и срезы, только start, stop, step передаются через двоеточие
Давай на конкретных примерах

'0123456'[4:] = '456'  # начинаем с символа с индексом 4
'0123456'[:4] = '0123' # обрезаем до символа с индексом 4 невключительно
'0123456'[::2] = '0246' # идем с шагом 2, то есть берем только каждый второй символ

# Можно также использовать сразу несколько аргументов
'0123456'[3:5] = '34'
'0123456'[1::3] = '14'
# Здесь я не написал ничего на месте второго аргумента. Так можно, тогда просто подставится дефолтное значение, то есть start = 0, stop = последний индекс + 1 (вручную так даже не получится написать), step = 1

# Так же учти, что необязательно строка должна быть тут в кавычках, она может быть внутри переменной
a = 'abcd123'
a[2:5:2] = 'c1'

# И start stop step могут быть отрицательными. Тогда для start и stop будет отсчет с конца, то есть -1 — первый символ с конца, -2 — второй с конца
# А step — шаг в обратную сторону, то есть с он пойдет с конца в начало
# Соответственно, если мы возьмем шаг -1, то получим строку наоборот
# И выглядит это как раз так
'0123456'[::-1]' = '6543210'
🔥43
Функции

Штука, которая позволяет обернуть кусок кода в одно название

Принимает аргументы в скобках
Возвращает значение

Объявление
def название(аргумент1, аргумент2, аргумент3, ...):
какой-то код
return возвращемое_значение


Вызов
название(аргумент1, аргумент2, аргумент3, ...)


Что значит возвращает. Значит можно написать
result = my_func()

И в переменной result окажется то, что функция вернула с помощью return

Для чего может пригодиться
# перевод в другую систему счисления 
def to_num_sys(n, base):
r = ""
    while n > 0:
        r += str(n % base)
        n //= base
    r = r[::-1]
    return r

# теперь можно этой функцией переводить любое число в любую СС
print(to_num_sys(8, 7)) # 10

# можно записать результат в переменную
a = to_num_sys (4, 5)
print(a) # 4

# можно например так
a = [to_num_sys(18, 2), to_num_sys(34, 5)]
a.append(to_num_sys)
print(a)
🔥6🤝2
питончик pinned «Навигация 1. Что это и как этим пользоваться 2. Что такое питон 3. Как начать использовать — установка и первая программа 4. Математические операции 5. Одно иди два равно 6. Перевод в двоичную систему 7. Перевод в другие системы счисления 7. Подсчет количества…»
Please open Telegram to view this post
VIEW IN TELEGRAM
Что такое питон (Python)

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

Компьютер — это машина, которая умеет быстро считать и хранить данные. С помощью языков программирования мы даём ему конкретные команды, что нужно сделать

Например, нам нужно сложить два числа и посмотреть результат. Пишем
result = 52 + 67
print(result)

И после запуска видим 119

Давай установим python и напишем свой первый код
🥰12😁3🔥1