Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
1
Выполнение процессором двоичных инструкций
2
3
Низкоуровневое программирование
4
Компилирование высокоуровневой программы и ее
исполнение
5
Исполнение высокоуровневой программы интерпретатором
6
История PYTHON
9
Структура программы на Python. Ввод и вывод данных
10
Комментарии в Python являются однострочными. Комментарий
начинается с символа «#» и заканчивается в конце строки.
11
Основные типы данных в языке Python
Данные в программе являются объектами. Каждый объект имеет значение
и тип. Например, когда в программе используется инструкция x = 22,
создается объект типа int со значением 22. Тип (или класс) объекта
определяет его внутреннее представление и операции, которые над ним
можно выполнять.
12
В языке отсутствуют инструкции объявления переменных.
Переменная создается, когда в программе ей впервые присваивается
значение. Значением переменной является ссылка на объект.
Переменные не имеют информации о типе, тип имеют объекты.
Поэтому во время выполнения программы переменной можно
присваивать значения разных типов, ошибка не возникнет. Это
называется динамической типизацией.
13
Имена переменных
МОЖНО использовать
• латинские буквы (A-Z, a-z)
заглавные и строчные буквы различаются
• русские буквы (не рекомендуется!)
• цифры
имя не может начинаться с цифры
• знак подчеркивания _
НЕЛЬЗЯ использовать
• скобки
• знаки +, =, !, ? и др.
Какие имена правильные?
AXby R&B 4Wheel Вася “PesBarbos” TU154
[QuQu] _ABBA A+B
14
Типы переменных
a=4
print ( type(a) )
целое число (integer)
<class 'int'>
a = 4.5
print ( type(a) )
вещественное число
<class 'float'>
a = "Вася"
print ( type(a) )
символьная строка
<class 'str'>
a = True
print ( type(a) )
логическая
<class
15
'bool'>
Как записать значение в переменную?
a = 5 a 5
a = 7 7
16
Ввод значения с клавиатуры
преобразовать в
целое число
a = int( input() )
b = int( input() )
17
Ввод двух значений в одной строке
21 33 input().split()
целые разделить строку на
применить части по пробелам
21 33 map ( int, input().split() )
эту
операцию к каждой части
18
Ввод с подсказкой
? Что не так?
19
Изменение значений переменной
a = 5
b = a + 2
a = (a + 2)*(b – 3)
b = b + 1
28 =(5+2)*(7-3)
a 5
b 7 =5+2
8 =7+1
20
Вывод данных
значение
print ( a ) переменной
a = int ( input() )
b = int ( input() )
c=a+b
print ( c )
? Что плохо?
22
Сложение чисел: полное решение
23
Форматный вывод
целое
a = 123
print ( "{:5d}".format(a)
5 ) 123
5 знаков
a = 5
print ( "{:5d}{:5d}{:5d}".format
(a, a*a, a*a*a) )
5 25 125
5 знаков 5 знаков 5 знаков
24
Архитектура приложений Python
25
Модульное программирование
26
•Функция: это блок кода, который можно использовать по несколько
раз, вызывая его с помощью ключевого слова. Например, print() - это
функция.
27
28
29
Модуль оформляется в виде отдельного файла с
исходным кодом. Стандартные модули находятся в
каталоге, где их может найти соответствующий
интерпретатор языка. Пути к каталогам, в которых Python
ищет модули, можно увидеть в значении переменной
sys.path:
30
Стандартная библиотека Python
Примеры модулей:
32
Примеры использования команды import
import math
# Используем функцию sqrt из модуля math
print (math.sqrt(9))
# Печатаем значение переменной pi, определенной в math
print (math.pi)
33
from math import *
# Теперь у нас есть доступ ко всем функция и переменным,
определенным в модуле math
print (sqrt(121))
print (pi)
print (e)
34
Встроенные функции
•Функции преобразования типов и классы: coerce, str, repr, int, list, tuple, long, float,
complex, dict, super, file, bool, object
•Числовые и строковые функции: abs, divmod, ord, pow, len, chr, unichr, hex, oct, cmp,
round, unicode
•Функции обработки данных: apply, map, filter, reduce, zip, range, xrange, max, min,
iter, enumerate, sum
•Функции определения свойств: hash, id, callable, issubclass, isinstance, type
•Функции для доступа к внутренним структурам: locals, globals, vars, intern, dir
•Функции компиляции и исполнения: eval, execfile, reload, __import__, compile
•Функции ввода-вывода: input, raw_input, open
•Функции для работы с атрибутами: getattr, setattr, delattr, hasattr
•Функции-"украшатели" методов классов: staticmethod, classmethod, property
35
36
Пакеты позволяют иерархически структурировать пространство имен
модуля с использованием точечной нотации. Точно так же,
как модули помогают избежать коллизий между именами глобальных
переменных, пакеты помогают избежать коллизий между именами
модулей.
import pkg.mod1, pkg.mod2
37
Основополагающими являются следующие библиотеки:
39
40
Типы данных
• int # целое
• float # вещественное
• bool # логические значения
• str # символьная строка
a=5
print ( type(a) ) <class 'int'>
a = 4.5
print ( type(a) ) <class 'float'>
a = True
print ( type(a) ) <class 'bool'>
a = "Вася"
print ( type(a) ) <class 'str'>
41
Арифметическое выражения
3 1 2 4 5 6
a = (c + b**5*3 - 1) / 2 * d
Приоритет (старшинство): 5
1) скобки c b 3 1
a d
2) возведение в степень ** 2
3) умножение и деление
4) сложение и вычитание перенос на
следующую строку
a = (c + b*5*3 - 1) \\
/2*d
перенос внутри
скобок разрешён
a = (c + b*5*3
- 1) / 2 * d
42
Деление
Классическое деление:
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
43
Остаток от деления
% – остаток от деления
d = 85
b = d // 10 # 8
a = d % 10 # 5
d = a % b # 5
d = b % a # 3
Для отрицательных чисел:
a = -7 ! Как в математике!
b = a // 2 # -4 остаток 0
d = a % 2 # 1
-7 = (-4)*2 + 1
44
Сокращенная запись операций
a += b # a = a + b a += 1
a -= b # a = a - b
a *= b # a = a * b увеличение на 1
a /= b # a = a / b
a //= b # a = a // b
a %= b # a = a % b
45
Вещественные числа
print("{:10.2g}".format(x))
1.2e+02
значащих цифр
1,2 102
46
47
int() – преобразование к целому числу.
float() – преобразование к числу с плавающей точкой
round() – округление до N знаков после запятой
abs() – возвращает абсолютную величину (модуль числа).
max(), min() – находят максимальное или минимальное значение
math.pi, math.e – числа π и e.
math.sin(), math.cos(), math.tan() – тригонометрические функции
math.exp() – экспонента.
math.sqrt() – квадратный корень.
math.ceil(), math.floor() – округление до ближайшего большего и меньшего целого
math.pow() – возведение числа в указанную степень
48
Спасибо за внимание
49