Мамы в IT. Учим Python в декрете
466 subscribers
92 photos
7 links
Мамы учат Python💻
Удобнее всего читать канал с начала, чтобы изучать темы по очереди🔥 Кидайте решения в комментарии, будем искать лучшие решения вместе 👩🏻‍💻👩🏻‍💻
Download Telegram
🤓 Для наглядной демонстрации в примерах на скринах используется функция list(), преобразующая последовательность в список. Мы познакомимся с этой функцией и списками более подробно немного позже.
👍8
📎 Цикл for часто используется в связке с функцией range(). Например, чтобы выполнить какое-то действие n раз (в нашем случае напечатать число и это же число во второй степени) можно написать такую программу:

🤓 В комментариях еще один вариант подобной программы.
👍5
📌 Задача.

На консоль поступает 2 числа: x и y, известно, что x < y. Выведите
все числа от x до y включительно. Ниже выведите числа от x до y, не включая y.


🤓 Жду вопросы и ваши программы в комментариях🔥 Первые задачи на эту тему могут показаться сложными, но стоит их решить, и дальше все пойдет легко.
👍2
Операторы присваивания в Python

📎 Мы уже много раз использовали оператор присваивания (=) в коде, а в посте про цикл for я показала конструкцию i = i + 1, где i, стоящая слева от оператора присваивания, вычисляется в текущей итерации, а i, стоящая справа, имеет значение из предыдущей итерации (разберем это еще раз в примере ниже).

В Питоне эту строку можно записать так:

>>> i += 1 # i = i + 1

🖇️ Эти 2 способа равнозначны, но второй удобнее, короче и чаще используется.

🤓 += также считается оператором присваивания (как и -=, *=, /= и т. д).

🖇️ Аналогичным образом вы можете прописывать другие операции присваивания, основываясь на математических операторах, которые мы использовали (https://t.me/findyourselfinpython/37).
👍5
📌 Итак, в первой строке мы создали переменную sum, равную нулю (чтобы в каждой итерации складывать в нее новое число).

📌 Во второй строке мы начали цикл for, при первом исполнении которого переменная i примет значение 0. В третьей строке у нас происходит следующее:

sum = 0 + 0 (sum = sum + i, в первой итерации sum и i равны нулям).

📌 Затем мы снова возвращаемся на вторую строку, при втором исполнении цикла i = 1:

sum = 0 + 1 = 1 (справа от знака равно мы используем результат sum из предыдущей итерации, к ней прибавляем i).

📌 И опять вернемся на вторую строку, при третьем исполнении цикла (итерации) i = 2:

sum = 1 + 2 = 3 (опять справа от знака равно результат sum из предыдущей итерации, к нему прибавляем i).

📌 При четвертой итерации i = 3:

sum = 3 + 3 = 6

📌 При пятой итерации i = 4:

sum = 6 + 4 = 10

📌 При шестой итерации i = 5:

sum = 10 + 5 = 15

📌 При седьмой итерации i = 6:

sum = 15 + 6 = 21

📌 И при восьмой итерации i = 7:

sum = 21 + 7 = 28


🤓Цикл завершен, sum = 28
🔥51
📌 И задача:

На консоль поступает n целых положительных чисел. Необходимо определить их сумму с помощью цикла for. Попробуйте также вычислить их произведение (либо в этой же программе, либо в отдельной).

Совет: попробуйте сначала решить задачу для чисел от 1 до 25
👍5
Разбор задачи из поста выше:

📎 Если мы решаем ее для чисел от 1 до 25, нам подойдет код с первого скрина (очень похоже на разобранную на итерации вчерашнюю задачу — https://t.me/findyourselfinpython/94). Результат этой программы на втором скрине.

📎 Если мы решаем ее для чисел, которые поступают с консоли, нам нужен код с третьего скрина. Результат на 4-м скрине.

Обязательно задавайте вопросы в комментариях, на этих двух примерах станет намного понятнее, как работает цикл for, поэтому их стоит разобрать 🔥
3
📌 Задача

На консоль поступает число n. Выведите на консоль значения чисел от 1 до n включительно, возведенные в третью степень (знак возведения в степень **)
👍4
📌 Задача

На консоль поступает число n. Определите сумму 1**2 + 2**2 + 3**2 + ... + n ** 2. Иными словами, найдите сумму чисел, возведенных в квадрат (умноженных на самих себя) от 1 до n включительно

Пример:
Вход: 5
Выход: 55 (1+4+9+16+25)
👨‍💻3🔥1
Еще о функции range()

🤓 Когда вы используете ее с тремя параметрами (подробнее — в посте — https://t.me/findyourselfinpython/87), если третий параметр будет отрицательным числом, то последовательность чисел будет развернута и напечатана с шагом, равным значению этого числа по модулю.

Пример:
👍52
📌 Задача

На консоль поступает 2 числа: x и y Выведите все числа от x до y включительно по возрастанию в случае, если x < y. Если y < x, выведите их по убыванию.
👍3
📌 Задача

На консоль поступает число n, а затем вводится ровно n чисел, каждое в новой строке. Найдите сумму этих чисел.

Пример:
Вход:
4
6
8
3
6
Выход:
23
👍2
📌 Задача

На консоль поступает число x — количество чисел, которые будут введены ниже. Посчитайте, сколько среди введенных чисел нулей.

Пример:
Вход:
4
3
0
33
0
Выход:
Среди введенных чисел 2 нуля
🔥31
Именованные параметры

🤓 По умолчанию функция print() принимает несколько аргументов, выводит их через пробел, после чего ставит перевод строки. Это поведение можно изменить, используя именованные параметры sep (разделитель) и end (окончание).

Примеры на скринах:
👍61