Telegram Group Search
Пока небольшой гайд по ускорению любого видео через браузер:
1) заходим в инструменты разработчика: ПКМ по страничке браузера -> "посмотреть код"
2) переходим на вкладку "Console"
3) пишем туда код:
document.querySelector('video').playbackRate = 2.0

(вместо 2.0 можно поставить любое число. 2.0 означает "ускорить видео в 2 раза")

Semolina code | Chat | YouTube
1 урок:
Ссылка на видео
Методичка в notion: Основы python
Ссылка на презентацию
Ссылка на код с урока

Альтернативный вариант, где посмотреть теорию (на самом деле первая ссылка из браузера)

К следующему уроку нужно скачать алекса дева vs code и настроить его под python (руссификатор устанавливать необязательно)

Сразу еще кидаю учебник-справочник по python
По нему нет смысла обучаться без опыта
Но темы, которые мы прошли, в нем можно посмотреть и закрепить (учебник переведен на множество языков. Я кидаю русскую версию)

Видео с решением практики (смотреть только после того, как попробовали решить самостоятельно)

Практика:
1 уровень:
1) Пользователь вводит число a и число b. Возвести а в степень b
2) Пользователь вводит число от 1 до 7. Вывести соответствующий день недели
3) Пользователь вводит 2 числа. Вывести наибольшее из них
4) Пользователь вводит свой депозит и хороший курс доллара. Вывести в консоль депо в рублях и заплакать

2 уровень:
1) Пользователь вводит число. Если оно четное, вывести "четное". Если оно нечетное, вывести "нечетное"
2) Пользователь вводит 3 числа. Вывести наименьшее из них
3) Из нарнийского чата Аня узнала, что рекомендуется спать хотя бы A часов в сутки, но пересыпать тоже вредно и не стоит спать более B часов. Сейчас Аня спит H часов в сутки. Если режим сна Ани удовлетворяет рекомендациям Сергея, выведите “Это нормально”. Если Аня спит менее A часов, выведите “Недосып”, если же более B часов, то выведите “Пересып”. Получаемое число A всегда меньше либо равно B (то есть это проверять не надо).

3 уровень:
1) Написать простой калькулятор, который считывает с пользовательского ввода три строки: первое число, второе число и операцию, после чего применяет операцию к введенным числам (“первое число” “операция” “второе число”) и выводит результат на экран.
Поддерживаемые операции: +, -, /, *, mod, pow, div, где:
mod - это взятие остатка от деления,
pow - возведение в степень,
div - целочисленное деление.
2) даны 2 числа a и b. Определить, делится ли a на b нацело. Делится ли b на a?
3) дано трёхзначное число. Определить, есть ли среди его цифр одинаковые

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
2 урок:
Ссылка на видео
Методичка в notion: Основы python
Методичка в notion: Cписки, цикл for, цикл while
Ссылка на презентацию
Ссылка на Код с урока

Визуализатор python с урока

Видео с решением практики (смотреть только после того, как попробовали решить самостоятельно)

уровень 1:
1) Напишите программу, которая проверяет попадает ли введенное пользователем число в диапазон от 1 до 100 или от 200 до 300 включительно.
2) Температура воды в кастрюле 7 градусов. Кастрюлю поставили на огонь. Температура увеличивается каждые 2с на 1 градус. Определить через сколько вода закипит (температура будет 100 градусов)
3) Вывести на экран 5 строк из трех нулей (каждая строка должна быть пронумерована)
4) Вывести прямоугольный треугольник из символа "*" (высота указывается с клавиатуры)

уровень 2:
1) Имеется коробка со сторонами A x B x C. Определить, войдет ли она в дверь размером M x K
2) Вывести равнобедренный треугольник из символа "*" (высота указывается с клавиатуры)
3) Дано число N и последовательность квадратов чисел (1, 4, 9, 16, 25, …). Вывести числа, которые меньше N

уровень 3:
1) В кафе продают по 3 шарика мороженного и по 5. Можно ли купить ровно k шариков мороженного
2) Клиент оформил вклад на m тысяч рублей в банке под k% годовых. Через сколько лет сумма вклада превысит s тысяч рублей, если за это время клиент не будет брать деньги со счета.
3) Дано число N. Посчитать сумму цифр

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
Просто мозг не привык разбивать задачи на мелкие части и придумывать каждый шаг
Вот для вас всех алгоритм как решать задачи с циклом на примере задачи с равнобедренным треугольником.

1) забейте на цикл и забудьте, что он существует. Решите задачу с помощью принтов:
print(“ *”)
print(“ ***”)
print(“*****”)
Результат:
*
***
*
2) анализируем закономерности в print.
Пробелы: сначала 2, потом 1, потом 0 (на каждом шаге -1)
Звёздочки: сначала 1, потом 3, потом 5 (на каждом шаге + 2)
3) делаем принты одинаковые (с помощью переменной)
spaces = 2
stars = 1
print(“ ” * spaces + stars * “*”)
spaces -= 1
stars += 2
print(“ ” * spaces + stars * “*”)
spaces -= 1
stars += 2
print(“ ” * spaces + stars * “*”)
spaces -= 1
stars += 2
Получаем 3 строчки которые повторяются 3 раза
4) пытаемся понять как это связать с данными, которые ввёл пользователь (в нашем случае высота = h = 3)
spaces в примере изначально была = 2
Это по сути h - 1
stars в любом случае вначале всегда должна равняться 1 (так как это вершина)
5) сколько итераций должен сделать цикл? Столько же сколько и высота:
i = 0
while i < h:

i += 1
6) добавим в цикл наш код:
i = 0
while i < h:
print(“ ” * spaces + stars * “*”)
spaces -= 1
stars += 2
i += 1
7) добавим переменные, которые зависят от пользователя:
h = int(input())
spaces = h - 1
start = 1
i = 0
while i < h:
print(“ ” * spaces + stars * “*”)
spaces -= 1
stars += 2
i += 1
8) уже всё работает - пытаемся оптимизировать: можно убрать переменную i и использовать как счётчик переменную spaces (но в условии нужно будет писать spaces >= 0 так как цикл должен закончиться, когда закончатся пробелы)
Получаем неплохой код:
h = int(input())
spaces = h - 1
stars = 1
while spaces >= 0:
print(“ ” * spaces + stars * “*”)
spaces -= 1
stars += 2

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
3 урок:
Ссылка на видео
Методичка в notion: Cписки, цикл for, цикл while
Ссылка на презентацию
Ссылка на код с урока

Если у вас что-то не получается - это нормально
Мы двигаемся в супер сумасшедшем темпе и так обычно никто не работает. За 3 урока (1.5 недели) мы разобрали темы, которые обычные школы программирования проходят за 2.5-3 месяца
Если вы понимаете то, что мы прошли хотя бы на 70% - вы уже нереальные красавцы

По поводу практики: достаточно решать 3-5 задач из разных блоков, чтобы закреплять материал и считать домашнее задание сделанным, а тему понятой)

Видео с решением практики (смотреть только после того, как попробовали решить самостоятельно)

Задачи на работу со списком через цикл:
1) есть список из 10 элементов. найти сумму элементов этого списка
2) есть список из 10 элементов. Посчитать сумму четных цифр в списке
3*) есть список из 10 элементов. найти наибольшее и наименьшее число в списке (самая простая задача с реального собеседования)
4*) задача 3, но нужно найти индекс минимального и максимального элемента в списке

Задачи на методы списка:
1) Задачу начать решать с пустого списка:
lst = []
Папа написал Саше список продуктов (молоко, огурцы, пиво, рыбка) и бабушка тоже попросила купить некоторые продукты (чай, сахар, сухарики).
Мама увидела список и сказала вычеркнуть пиво и рыбку
Помоги Саше сформировать единый список покупок и посчитать сколько пунктов содержит общий список покупок
2) Есть список. пользователь вводит число. Нужно определить, есть ли это число в списке
3) Есть список и число, которое ввел пользователь
посчитать сколько раз это число встречается в списке

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
4 урок:
Ссылка на видео
Методичка в notion: Функции
Ссылка на презентацию
Ссылка на код с урока

Мы скорее всего сделалаем перерыв на недельку, чтобы все кто хочет, смогли догнать тех, кто ушел вперед
Это сообщение будет редактироваться и я сюда добавлю ресурсы где можно дополнительно почитать по нашим темам

Видео 1 в конце видео решается задача 6.6 и там в решение ошибка: если попытаться удалить последний элемент, вылетим с ошибкой "index out of range".
На ошибку указал @facerx и вот правильное решение:
def foo(lst, n):
tmp_lst = []
i = 0
while i < len(lst):
if i == n:
i += 1
tmp_lst.append(lst[i])
if i == n - 1:
i += 1
i += 1
print(tmp_lst)


Видео 2
С решением практики (смотреть только после того, как попробовали решить самостоятельно)

Задачи на работу с функциями:
1) Написать функцию, которая будет искать и выводить на экран минимальное число, большее 300 и кратное 19.
2) Написать функцию, которая будет обменивать местами первую и последнюю цифру числа N (1234 → 4231).
3) Написать функцию, которая будет определять, делится ли число N на: 2, 3, 4, 5, ... (без использования оператора % )
4) Написать функцию, которая будет вычислять и выводить на экран значение выражения
N^M без использования оператора возведения в степень (**).
5) С клавиатуры вводится пять чисел. Для каждого из них вывести,
является ли оно степенью числа 3. Вынести определение степени в функцию.
6) Реализовать набор функций для работы со списком:
• Ввод с клавиатуры/инициализация случайными числами (с параметрами).
• Вывод списка на экран (в одну строчку).
• Подсчет максимума и минимума (с индексами).
• Подсчет количества элементов, равных (больших/меньших) N.
• Добавление элемента К [в конец массива/на N-ю позицию].
• Удаление из списка [последнего/Nго элемента].
• Сортировка списка по (возрастанию/убыванию). Повторяющиеся — убирать.
7) Найти третий максимум в списке.
8) Сдвинуть все элементы массива на два вправо. Оставшиеся элементы — поставить слева в том же порядке.
9) Вставить K после максимального элемента.

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
5 урок:
Ссылка на видео
Методичка в notion: Строки и методы строк
Ссылка на презентацию

К следующему уроку обязательно почитайте документацию по методам строк (попробуйте использовать методы, которые отмечены галочкой в презентации)

Видео с решением практики

Практика:
1 уровень:
1) Паша очень любит кататься на общественном транспорте,
а получая билет, сразу проверяет, счастливый ли ему попался.
Билет считается счастливым, если сумма первых трех цифр совпадает с
суммой последних трех цифр номера билета.
Программа должна выводить “Счастливый” или “Обычный”. (Решить с помощью индексов строк, то есть без математики 🥳)
2) Дана последовательность символов. Проверить, является ли она палиндромом (слово или текст, одинаково читающееся в обоих направлениях)
3) Написать функцию проверки email (представьте, что для своего сайта эту функцию пишете. Сделать проверки, которые считаете нужными, а я буду пробовать сломать)
4) Определить количество слов в строке.
Вводится строка, состоящая из слов, разделенных пробелами.
Требуется посчитать количество слов в ней.

2 уровень:
1) Определить сложность пароля (сделать функцию как на обычных сайтах. То есть проверять большие буквы, символы, цифры И так далее. Подсказка: ascii)
2) Необходимо написать программу, которая сможет посчитать повторяющиеся символы и вывести сокращенную строку, пример:
Вход: s = 'aaaabbcaa'
Выход: 'a4b2c1a2'
3) На основании предоставленного отрывка текста определить 3 наиболее часто встречаемых символа в нем.
Пробелы нужно игнорировать (не учитывать при подсчете).
Для выведения результатов вычислений требуется написать функцию top3(st).
Итог работы функции представить в виде строки: «символ – количество раз, символ – количество раз…».
4) Дмитрий считает, что когда текст пишут в скобках (как вот тут, например), его читать не нужно.
Вот и надумал он существенно укоротить время чтения, написав функцию, которая будет удалять все, что расположено внутри скобок.

УРОВЕНЬ ПСиИииХ :
1) Взять файл из закрепа (там html код таблицы с CoinGecko ~5.5к строк)
2) засунуть этот код в переменную (просто скопировать и засунуть в переменную с помощью тройных кавычек)
3) Вывести все названия криптовалют, которые есть в этом коде (по сути первая страница coingecko - топ 100)
P.S. - не пытайтесь читать код coingecko. Откройте консоль разработчика и найдите закономерности
Подсказка: возле каждого названия криптовалюты есть классы "py-0 coin-name cg-sticky-col cg-sticky-third-col px-0" ориентируйтесь на них, когда будете парсить

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
coingecko.txt
1.1 MB
Файл для практики урока 5
6 урок:
Ссылка на видео
Методичка в notion: Словари и кортежи
Ссылка на презентацию

В этот раз я попробовал записать видео без людей. Интересно какой формат вам больше подходит. Жду фидбека)

Видео с решением практики

Практика (если будет мало - напишите и я докину задачи):
1 уровень:
1) Есть 2 словаря. Объединить их без помощи функции update

2) Есть словарь с числовыми значениями. Посчитать среднюю по значениям

3) Даны два списка одинаковой длины. Необходимо создать из них словарь таким образом, чтобы элементы первого списка были ключами, а элементы второго — соответственно значениями нашего словаря.

4) Напишите функцию update_dictionary(d, key, value),
которая принимает на вход словарь d и два числа: key и value.
Если ключ key есть в словаре d, то добавьте значение value в список,
который хранится по этому ключу.
Если ключа key нет в словаре, то нужно добавить значение в список по ключу 2*key.
Если и ключа 2*key нет, то нужно добавить ключ 2*key в словарь
и сопоставить ему список из переданного элемента [value].

5) Когда Антон прочитал «Войну и мир», ему стало интересно,
сколько слов и в каком количестве используется в этой книге.
Помогите Антону написать упрощённую версию такой программы,
которая сможет подсчитать слова, разделённые пробелом и вывести получившуюся статистику.
Программа должна считывать одну строку со стандартного ввода и
выводить для каждого уникального слова в этой строке число его повторений (без учёта регистра)
в формате "слово количество" (см. пример вывода).
Порядок вывода слов может быть произвольным, каждое уникальное слово​ должно выводиться только один раз

SemolinaCode | Chat | YouTube | Arbuzers | HowToCode | Prop
2025/06/18 12:12:34
Back to Top
HTML Embed Code: