Академия: Конспект первой недели курса Программирование на Python
В этом курсе мы будем изучать язык программирования Python. Я работаю с Linux, поэтому мне удобнее всего будет установить себе интерпретатор, нежели пользоваться различными онлайн - продуктами.
Запуск python
Создаём папку для сайта на python и пишем в консоли
python3 -m http.server --cgi
Теперь по адресу http://localhost:8000 будет работать сайт из моей папки.
Создаём вложенную папку cgi-bin и в ней создадим файл index.py(должен быть исполнительным)
В нём запишем следующее:
#!/usr/bin/env python3
print()
print('Hello Golos')
print(1+2)
Кто с питоном уже работал - зачем print() писать? Без него на экране ничего нет.
Функция print просто выводит данные на печать, будь то скрипт или консоль.
Операции с числами
Попробуем простые математические операции. Дополним скрипт index.py
print(2+3)
print(17*9)
print(6/8)
Это были элементарные операции. В функцию мы передали числа напрямую, "посредничество" переменных, как видите, необязательно.
Операция деления выглядит так:
print(8/5)
Если вам нужно показать только целые - то следует написать 8//5
Например:
print(8/5) //выведет 1.6
print(8//5) //выведет 1
Важно - это не округление, а просто "отброс" чисел после запятой.
Также помните, что в Python на 0 делить нельзя
Остаток от деления:
print(8%5)
Такое выражение выведет на экран число 3.
Возведение в степень:
Для возведения в степень используется оператор **
Например:
print(2**4) //выведет 16
Изменение знака числа.
То есть если, например, нужно 5 превратить в -5 - то достаточно взять её в скобки и поставить перед ними знак минус:
print(-(5)) //выведет -5
Точно также перед скобками можно оставить и знак плюс, и несколько знаков плюс/минус подряд. Имейте ввиду, что интерпретироваться они будут как умножение на минус один и умножение на один. И дальше уже школьный курс алгебры:
print(++-++++(10)) //выведет -10
Будет -10, так как умножение на -1 превратит 10 в -10. А дальнейшее умножение на +1 уже не изменит знака числа.
Помните, что математические операции проводить можно над числовыми переменными. Если вы попытаетесь умножить строку на число - то эта строка будет повторена указанное число раз
Например:
print('Golos' * 5) //выведет GolosGolosGolosGolosGolos
Если у вас не целые числа, а десятичные дроби - то дробная часть отделяется от целой точкой.
Например:
print(9*0.5) //выведет 4.5
print(2.1*4) //выведет 8.4
Типы переменных
Выше мы поработали с числами и строками. Для хранения их внутри программы используются переменные. Переменная может хранить в себе целое число int, вещественное float, логическое значение bool, строку str и многое другое.
Типы переменных можно преобразовывать.
Например чтобы превратить целое число в вещественному - его нужно обернуть функцией float. Если к целому - int.
Например:
print(int(4.258)) //выведет 4
print(float(10)) //выведет 10.0
Важно - функции для приведения типа не являются математическими функциями округления.
Чтобы узнать тип данных в переменной - можно обернуть его функцией type
Например:
print(type(10)) //выведет <class 'int'>
Переменные
Для создания переменной ей нужно придумать имя и присвоить ей значение после знака равно.
Имя переменной может состоять из букв, цифр и знака подчёркивания. Начинаться оно должно с буквы или знака подчёркивания. Регистр букв важен.
Например:
Создание переменной
a = 10
a - имя переменной
10 - значение
Вывод переменной
print(a)
Сложение переменных:
a = a + 2
Это значит, что переменная a увеличена на 2.
Можно произвести сложение прямо в момент вывода.
print(a + 3)
Также можно использовать сокращённую форму записи.
Например эти две записи идентичны:
a = a + 3
a += 3
Точно также работают и операторы: +=, -=, *=, /=, //=, %= и **=
Из чего "Состоит" переменная
Ввод с клавиатуры
Для ввода с клавиатуры используется функция input()
Работать с ней мы будем в консольном режиме.
Например напишем в консоли следующий код:
a = int(input('Enter your age ')); print('Your age is '+ str(a));
В нём мы переменной a присвоим значение с клавиатуры, приведённое к целочисленному типу. А затем выведем на экран.
Как вы могли заметить - я привёл числовую переменную a к строковому типу, чтобы была возможность сконкатенировать её со строкой и вывести на экран.
Логические переменные
Это ничто иное, как истина или ложь. True / False. Они так-же могут быть представлены как 1 или 0.
Для изменения логической переменной перед ней следует поставить оператор not.
Например:
a = true
b = not a
print(b) // выведет False
Операции сравнения
Для того, чтобы принимать решения, на основании значения переменных их необходимо сравнивать.
Сделать это можно следующими операторами:
- < - меньше
- <= - меньше или равно
- > - больше
- >= - больше или равно
- == - равно
- != - не равно
Попробуем сравнить числа и сразу выводить результат на экран:
print(2 > 3)
print(4 < 17)
print(5.8 > 7 or 5 > 4)
print(8 > 6 and 10 < 12)
Я также использовал ключевые слова and и or, для того чтобы проверить хотя бы одно условие или сразу оба условия.
Условия
Для того, чтобы в полной мере использовать операции сравнения как раз нужны условия. В чём суть - если условие выполняется - отрабатывает один участок кода. Если не выполняется - то другой.
Сразу пример:
x = 12
if x % 2 == 0:
print('Even')
else:
print('Odd')
В этом примере мы проверяем чётность переменной x
Операции со строками
Склеивание строк называют конкатенацией
Конкатенация происходит также, как и в JavaScript, знаком +
Длину строки можно вычислить функцией len
print('abc' + 'def') // выведет abcdef
print(len('stringgg')) //выведет 8
Если вы усвоили весь урок - то без труда сможете описать в коде каждый пункт этой диаграммы
Что для меня было наиболее интересным и впечатляющим в данной неделе курса?
Меня впечатлило как быстро можно запустить интерпретатор Python - одной командой. В том же PHP это гораздо сложнее. Понравилась лёгкость синтаксиса, особенно в условиях, и даже возможность не ставить точку с запятой в конце строки.
Итог
Рассмотрев основы синтаксиса можно уже попробовать создавать более сложные программы, с использованием различных циклов, функций и многого другого