Программирование на языке Python
Простейшая программа
Вывод на экран
Сложение чисел
Сумма: псевдокод
Переменные
Имена переменных
Как записать значение в переменную?
Ввод значения с клавиатуры
Ввод значения с клавиатуры
Ввод двух значений в одной строке
Ввод с подсказкой
Изменение значений переменной
Вывод данных
Сложение чисел: простое решение
Сложение чисел: полное решение
Форматный вывод
Типы переменных
Зачем нужен тип переменной?
Размещение переменных в памяти
Арифметическое выражения
Деление
Сокращенная запись операций
0.97M
Категория: ПрограммированиеПрограммирование

Введение в язык Python. Простейшая программа

1. Программирование на языке Python

1
Программирование
на языке Python
§ 54. Введение в язык Python
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

2. Простейшая программа

Алгоритмы и программирование, язык Python, 10 класс
2
Простейшая программа
# Это пустая программа
? Что делает эта программа?
комментарии после #
не обрабатываются
кодировка utf-8
по умолчанию)
# -*- coding: utf-8 -*# Это пустая программа Windows: cp1251
"""
Это тоже комментарий
"""
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

3. Вывод на экран

Алгоритмы и программирование, язык Python, 10 класс
3
Вывод на экран
print ( "2+2=?" )
print ( "Ответ: 4" )
автоматический
переход на новую
строку
Протокол:
2+2=?
Ответ: 4
К.Ю. Поляков, Е.А. Ерёмин, 2018
print ( '2+2=?' )
print ( 'Ответ: 4' )
http://kpolyakov.spb.ru

4. Сложение чисел

Алгоритмы и программирование, язык Python, 10 класс
4
Сложение чисел
Задача. Ввести с клавиатуры два числа и найти их сумму.
Протокол:
Введите два целых числа
25 30
пользователь
25+30=55
компьютер
компьютер считает сам!
? 1. Как ввести числа в память?
2. Где хранить введенные числа?
3. Как вычислить?
4. Как вывести результат?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

5. Сумма: псевдокод

Алгоритмы и программирование, язык Python, 10 класс
5
Сумма: псевдокод
ввести два числа
вычислить их сумму
вывести сумму на экран
Псевдокод – алгоритм на
русском языке с элементами
языка программирования.
! Компьютер не может исполнить псевдокод!
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

6. Переменные

Алгоритмы и программирование, язык Python, 10 класс
6
Переменные
Переменная – это величина, имеющая имя, тип
и значение. Значение переменной можно
изменять во время работы программы.
Значение
Имя
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

7. Имена переменных

Алгоритмы и программирование, язык Python, 10 класс
7
Имена переменных
МОЖНО использовать
• латинские буквы (A-Z, a-z)
заглавные и строчные буквы различаются
• русские буквы (не рекомендуется!)
• цифры
имя не может начинаться с цифры
• знак подчеркивания _
НЕЛЬЗЯ использовать
• скобки
• знаки +, =, !, ? и др.
Какие имена правильные?
AXby R&B 4Wheel Вася “PesBarbos”
TU154 [QuQu] _ABBA A+B
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

8. Как записать значение в переменную?

Алгоритмы и программирование, язык Python, 10 класс
8
Как записать значение в переменную?
! При записи нового значения
оператор
присваивания
a = 5
a = 7
старое удаляется из памяти!
a
5
7
Оператор – это команда языка
программирования (инструкция).
Оператор присваивания – это команда для
записи нового значения переменной.
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

9. Ввод значения с клавиатуры

Алгоритмы и программирование, язык Python, 10 класс
9
Ввод значения с клавиатуры
a
5
! 1. Программа ждет, пока пользователь введет
значение и нажмет Enter.
2. Введенное значение записывается в
переменную a (связывается с именем a)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

10. Ввод значения с клавиатуры

Алгоритмы и программирование, язык Python, 10 класс
10
Ввод значения с клавиатуры
a = input()
b = input()
ввести строку с клавиатуры
и связать с переменной a
Протокол:
21
33
2133
с=a + b
print ( c )
? Почему?
! Результат функции input – строка символов!
преобразовать в
целое число
a = int( input() )
b = int( input() )
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

11. Ввод двух значений в одной строке

Алгоритмы и программирование, язык Python, 10 класс
11
Ввод двух значений в одной строке
a, b = map ( int, input().split() )
21 33 input()
ввести строку с клавиатуры
21 33 input().split()
целые
применить
разделить строку на
части по пробелам
21 33 map ( int, input().split() )
эту
операцию
к каждой части
a, b = map ( int, input().split() )
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

12. Ввод с подсказкой

Алгоритмы и программирование, язык Python, 10 класс
12
Ввод с подсказкой
a = input ( "Введите число: " )
Введите число: 26
подсказка
? Что не так?
a = int( input("Введите число: ") )
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

13. Изменение значений переменной

Алгоритмы и программирование, язык Python, 10 класс
13
Изменение значений переменной
a = 5
b = a + 2
a = (a + 2)*(b – 3)
b = b + 1
28
a
b
=(5+2)*(7-3)
5
7
=5+2
8
=7+1
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

14. Вывод данных

Алгоритмы и программирование, язык Python, 10 класс
14
Вывод данных
print ( a )
значение
переменной
значение и
текст
print ( "Ответ: ", a )
перечисление через запятую
print ( "Ответ: ", a+b )
вычисление
выражения
print ( a, "+", b, "=", c )
2 + 3 = 5
через пробелы
print ( a, "+", b, "=", c, sep = "" )
2+3=5
К.Ю. Поляков, Е.А. Ерёмин, 2018
убрать разделители
http://kpolyakov.spb.ru

15. Сложение чисел: простое решение

Алгоритмы и программирование, язык Python, 10 класс
15
Сложение чисел: простое решение
a = int ( input() )
b = int ( input() )
c=a+b
print ( c )
? Что плохо?
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

16. Сложение чисел: полное решение

Алгоритмы и программирование, язык Python, 10 класс
16
Сложение чисел: полное решение
print ( "Введите два числа: " )
a = int ( input() )
подсказка
b = int ( input() )
c=a+b
print ( a, "+", b, "=", c )
Протокол:
компьютер
Введите два целых числа
25 30
пользователь
25 + 30 = 55
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

17. Форматный вывод

Алгоритмы и программирование, язык Python, 10 класс
17
Форматный вывод
print( f"{a}+{b}={a+b}"
5 знаков на число
a = 5
print ( f"{a:5}{a*a:5}{a*a*a:5}" )
5
25
125
5 знаков 5 знаков 5 знаков
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

18. Типы переменных

Алгоритмы и программирование, язык Python, 10 класс
18
Типы переменных
• int
• float
• bool
• str
# целое
# вещественное
# логические значения
# символьная строка
a=5
print ( type(a) )
a = 4.5
print ( type(a) )
a = True
print ( type(a) )
a = "Вася"
print ( type(a) )
К.Ю. Поляков, Е.А. Ерёмин, 2018
<class 'int'>
<class 'float'>
<class 'bool'>
<class 'str'>
http://kpolyakov.spb.ru

19. Зачем нужен тип переменной?

Алгоритмы и программирование, язык Python, 10 класс
19
Зачем нужен тип переменной?
Тип определяет:
• область допустимых значений
• допустимые операции
• объём памяти
• формат хранения данных
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

20. Размещение переменных в памяти

Алгоритмы и программирование, язык Python, 10 класс
20
Размещение переменных в памяти
! При записи нового значения
оператор
присваивания
a = 5
старое удаляется из памяти!
a
a = 4.5
5
4.5
b = a
b
a = 10
a
«сборщик
мусора»
10
4.5
b
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

21. Арифметическое выражения

Алгоритмы и программирование, язык Python, 10 класс
21
Арифметическое выражения
3
1
2
4
5
6
a = (c + b**5*3 - 1) / 2 * d
Приоритет (старшинство):
1) скобки
2) возведение в степень **
3) умножение и деление
4) сложение и вычитание
a = (c + b*5*3 - 1) \
/2*d
a = (c + b*5*3
- 1) / 2 * d
К.Ю. Поляков, Е.А. Ерёмин, 2018
c b5 3 1
a
d
2
перенос на
следующую строку
перенос внутри
скобок разрешён
http://kpolyakov.spb.ru

22. Деление

Алгоритмы и программирование, язык Python, 10 класс
22
Деление
Классическое деление:
a = 9; b = 6
x = 3 / 4
# = 0.75
x = a / b
# = 1.5
x = -3 / 4 # = -0.75
x = -a / b # = -1.5
Целочисленное деление (округление «вниз»!):
a = 9; b = 6
x = 3 // 4
# = 0
x = a // b
# = 1
x = -3 // 4 # = -1
x = -a // b # = -2
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru

23. Сокращенная запись операций

Алгоритмы и программирование, язык Python, 10 класс
23
Сокращенная запись операций
a += b # a = a + b
a -= b # a = a - b
a *= b # a = a * b
a /= b # a = a / b
a //= b # a = a // b
a %= b # a = a % b
a += 1
увеличение на 1
Множественное присваивание:
a = b = 0
a, b = 1, 2
К.Ю. Поляков, Е.А. Ерёмин, 2018
# b = 0, a = b
# a = 1; b = 2
http://kpolyakov.spb.ru
English     Русский Правила