Ctrl+Enter
Ошибка или опечатка? Выдели её, нажми Ctrl+Enter и коротко опиши, что не так. Это сделает наши материалы лучше!
Ошибка или опечатка? Выдели её, нажми Ctrl+Enter и коротко опиши, что не так. Это сделает наши материалы лучше!
Данный курс будет посвящен изучению программирования с использованием языка Python. Это — современный язык программирования, работающий на всех распространённых операционных системах.
О том, что и как нужно установить на своём компьютере, будет описано в самом конце. Первые эксперименты мы будем проводить прямо на этой странице в браузере.
Ни один программист не обходится без консоли Python —
REPL (read-eval-print loop — «цикл "чтение-выполнение-вывод"»), чтобы протестировать свой код на первых этапах его создания.
REPL можно узнать по "шевронам" в начале строки >>>
:
так консоль сообщит, что готова получить команду.
Когда команда готова, нужно нажать клавишу Enter.
Смело вводите команды и наслаждайтесь результатом. А что можно вводить? Несколько примеров:
>>> 2 + 2 * 2 6 >>> 2 ** 100 1267650600228229401496703205376 >>> 123454321**0.5 11111.0 >>> 'Hello' + 'World' 'HelloWorld' >>> 'ABC' * 10 'ABCABCABCABCABCABCABCABCABCABC'
Первая команда вычисляет сумму двух чисел, вторая команда вычисляет 2 в степени 100, третья команда извлекает квадратный корень из числа 123454321, четвёртая команда выполняет операцию конкатенации (склейку) для строк, а пятая команда печатает строку 'ABC'
, повторенную 10 раз.
Вот интерактивная консоль. Попробуйте в ней сложить несколько чисел побольше, сложить пару строк и т.п.
В задачах этого листка нужно написать программу из одной строки вида 2 + 2
, где вместо 2 + 2
будет выражение, которое необходимо
вычислить в этой задаче.
Когда программа готова, нужно зайти на страничку сдачи, ввести свои логин (вида s27b_sidoroff
) и пароль.
После этого выбрать задачу, которую хочется сдать.
Скопировать код программы в окно и нажать кнопку "Отправить!".
Также можно указать файл с кодом программы.
Через некоторое время тестирование программы будет окончено, появится надпись "ТЕСТИРОВАНИЕ ЗАВЕРШЕНО".
Теперь нужно обновить страницу и посмотреть результат.
Если программа не засчитана, то нужно посмотреть протокол проверки.
В нём будет написано, почему программа не засчитана, а также, возможно, будет показан тест, на котором программа работает неправильно.
Для вопросов и обсуждений задач лучше всего установить себе телеграм. Удобнее всего сначала установить telegram на свой смартфон, а потом — на свой компьютер. У telegram отличное приложение для компьютеров и отличная синхронизация между компьютером и смартфоном/планшетом. Приложение для android, iOS, winPhone. Для регистрации требуется номер телефона.
После установки на смартфон (это не обязательно, можно сразу на PC), можно установить приложение для компьютера. Для windows 10 можно установить из windows store. Для mac'а есть app store. Можно напрямую скачать дистрибутивы приложений: telegram.org/apps.
В тестирующую систему нужно
сдать выражение вида 2 ** 3
.
Текст из интерактивной консоли можно копировать:
для этого его нужно выделить и нажать Ctrl+C или Cmd+C (на Mac).
Вычислите \(20! = 1 \cdot 2 \cdot 3 \ldots \cdot 20 \).
Сдать нужно выражение, которое это число вычисляет, а не сам ответ.
Итак, мы видим, что Питон умеет работать как минимум с двумя видами данных — числами и строками.
Числа записываются последовательностью цифр, также перед числом может стоять знак минус, а строки записываются в одинарных кавычках. 2
и '2'
— это разные объекты, первый объект —
число, а второй — строка.
В питоне вообще все данные являются объектами.
Число 2 представляется объектом «число 2», строка 'hello'
– это объект «строка 'hello'».
Каждый объект относится к какому-то типу.
Строки хранятся в объектах типа str
, целые числа хранятся в объектах типа int
.
Тип объекта определяет, какие действия можно делать с объектами этого типа.
Так операция +
для целых чисел и для строк работает по-разному:
для чисел это сложение, а для строк — конкатенация.
Кроме целых чисел есть и другой класс чисел: действительные (вещественные числа), представляемые в виде десятичных дробей.
Они записываются с использованием десятичной точки, например, 2.0
.
В каком-то смысле, 10
и 10.0
имеют равные значение, но это — разные объекты.
Например, можно вычислить значения выражения 'ABC' * 10
(повторить строку 10 раз), но нельзя вычислить 'ABC' * 10.0
.
Вот список основных операций для чисел:
x + y
— сумма;
x - y
— разность;
x * y
— произведение;
x / y
— частное;
x ** y
— возведение в степень.
Полезно помнить, что квадратный корень из числа x
— это x ** 0.5
, а корень степени n
это x ** (1 / n)
.
Есть также унарный вариант операции -
, то есть операция с одним аргументом.
Она возвращает число, противоположное данному.
Например: -x
.
В выражении может встречаться много операций подряд.
Как в этом случае определяется порядок действий?
Например, чему будет равно 1 + 2 * 3 ** 1 + 1
?
В данном случае ответ будет 8, так как сначала выполняется возведение в степень, затем — умножение, затем — сложение.
Более общие правила определения приоритетов операций такие:
1. Выполняются возведения в степень справа налево, то есть 3 ** 3 ** 3
это \(3^{(3^3)}\).
2. Выполняются унарные минусы (отрицания).
3. Выполняются умножения и деления слева направо.
Операции умножения и деления имеют одинаковый приоритет.
4. Выполняются сложения и вычитания слева направо.
Операции сложения и вычитания имеют одинаковый приоритет.
Вычислите сумму первых 10 слагаемых этого ряда. Сколько получилось?
Если бы требовалось вычислить сумму 2 слагаемых, то ответ был бы
4/1 - 4/3
Если 1 января пробежать 1 километр, а в каждый следующий день увеличивать пробег на 1% по сравнению с предыдущим днём, то какая будет величина пробега 31 декабря? (в году 365 дней).
Основные операции над строками:
A + B
— конкатенация;
A * n
— повторение n
раз, значение n
должно быть целого типа.
Напишите программу, которая выводит 179 раз подряд цифру 1.
Напишите выражение, которая выводит слово 'Python' \(179\) раз подряд (только буквы, без кавычек).
Иногда бывает полезно целое число превратить в строку.
И, наоборот, если строка состоит из цифр, то полезно эту строку превратить в число, чтобы дальше можно было выполнять арифметические операции с ней.
Для этого используются функции, одноименные с именем типа, то есть int
, float
, str
.
Например, int('123')
вернет целое число 123
, а str(123)
вернет строку '123'
.
Пример:
>>> str(2 + 2) * int('2' + '2') '4444444444444444444444'
Результатом будет строка из числа 4, повторенная 22 раза.
Квадраты чисел из одних единиц выглядят красиво: \(11^2=121\), \(111^2=12321\), \(1111^2=1234321\). Возведите в квадрат число, записанное при помощи 179 единиц.
Число \(179^{10}\) записали четыре раза подряд.
Получившееся число поделили на 3.
Из результата извлекли корень степени \(11\)
(то есть возвели число в степень \(1/11\)).
Сколько получилось?
PS. Не забудьте про приоритеты операций!
Операции сложения, вычитания, умножения, деления выполняются слева направо, например,
А в каком порядке (слева направо или справа налево) выполняются операции возведения в степень?
Определите это, экспериментируя с Python.
На проверку нужно сдать текст с вашими выводами и объяснениями, как были получены эти выводы.
Эта часть — самая сложная. И её очень важно выполнить правильно, от этого будет сильно зависеть удобство обучения. Пожалуйста, внимательно следуйте инструкции. В инструкции есть скриншоты. Клик по ним будет их разворачивать.
Итак, необходимо установить дома интерпретатор питона и среду разработки. Все необходимые программы ставятся и на Windows, и на OS X, и на основные дистрибутивы Linux.
Необходимые программы состоят из двух частей: интерпретатора и среды разработки (IDE). Интерпретатор отвечает за то, чтобы выполнить вашу программу. А среда разработки за то, чтобы её было удобно вводить, запускать и т.п.
В качестве среды разработки будем использовать PyCharm. PyCharm по началу будет ужасно тяжёлым, тормозным, противным и непонятным. Но он предлагает много плюшек, которыми очень удобно пользоваться. Это программа помогает решать задачи и создавать проекты на Python как никакая другая.
Так как обучение у нас продлится долго, то удобно установить приложение JetBrains Toolbox App, через которое будет удобно устанавливать и обновлять PyCharm, а позже — и другие инструменты.
print('Горячие клавиши для запуска:') print('Ctrl+Shift+F10 в Windows и Linux') print('Ctrl+Option+R в MacOS')
Эта задача, пожалуй, самая сложная.
Установите интерпретатор и среду разработки по инструкции выше.
Создайте проект, в нём создайте папку для контеста 01, в нём — файл J.py
.
Вставьте в него код:
print('Горячие клавиши для запуска:') print('Ctrl+Shift+F10 в Windows и Linux') print('Ctrl+Option+R в MacOS')
Запустите эту программу. Сделайте скриншот, картинку со скриншотом сдайте в тестирующую систему.
Должно получиться что-то такое:
Как сделать скриншот в Windows:
В этой задаче вам нужно продемонстрировать, что вы научились пользоваться почтой 179-й школы. Открываете страницу http://mail.179.ru, вводите свой логин и пароль. Дальше вам нужно отправить письмо на адрес s22b_savvateev@179.ru с запросом кода. Я в ответ его пришлю.
В этой задаче вам нужно продемонстрировать, что вы научились пользоваться телеграмом. Напишите мне или моему коллеге вопрос на t.me/Dart_Xeyter или на t.me/Eyakm1 соответственно, и мы пришлём ответ. Туда же можно писать, если код по какой-то странной причине не работает и из-за тому подобных вещей. Не забудьте представиться :)