Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛЕКЦИЯ 3

.pdf
Скачиваний:
12
Добавлен:
26.03.2016
Размер:
705.41 Кб
Скачать

Лекция 3. Числа. Логические операции. Динамическая типизация. Оператор присваивания. Условный оператор. Операторы цикла.

1.Числовые типы.

1.1.Операции с целыми и вещественными числами.

1.2.Битовые операции.

2.Операции с логическим значением.

3.Приоритет операций.

4.Динамическая типизация.

4.1.Разделяемые ссылки.

5.Синтаксис.

6.Оператор присваивания.

7.Условный оператор. 7.1.Пример.

8.Оператор цикла while. 8.1.Пример.

9.Оператор цикла for.

9.1.Пример.

1. Числовые типы

Тип

Литералы/ создание

Целые числа

122, -4, 99999999999999999999999999, 0o177(octal),

 

0x9ff(hexadecimal), 0b101010(binary)

Вещественные числа

1.0, 3.14, 0.5, .5, 4E21, 4.0e21

Комплексные числа

3+4j, 3.0+4.0j, 3J

Числа фиксированной точности

decimal.Decimal ('0.1')

Рациональные числа

fractions.Fraction (3,4)

Множества

Set([1, 2, 3, 4])

 

{1, 2, 3, 4}

Логические значения

True (1), False (0)

1.1. Операции с целыми и вещественными числами

Оператор/ функция

Описание

X + Y

Сложение

X - Y

Вычитание

X * Y

Умножение

X / Y

Деление

X // Y

Деление c округлением вниз (до ближайшего меньшего)

X % Y

Остаток от деления

divmod(X,Y)

Пара (X // Y, X % Y)

- X

Смена знака числа

abs(X)

Модуль числа

X ** Y

Возведение в степень

pow(X, Y[, Z])

X в степени Y, [ X в степени Y по модулю Z: вычисление остатка от деления

 

числа X в степени Y на число Z (модуль)]

X.as_integer_ratio()

Возвращает пару целых чисел, чье отношение равно вещественному X

X.is_integer()

Проверка - является ли значение вещественного X целым числом

int([строка-число], [основание

Преобразование к целому числу в десятичной системе счисления числа в

системы счисления])

системе от 2 до 36 (по умолчанию в десятичной)

bin(X)

Преобразование целого числа в двоичную строку

hex(X)

Преобразование целого числа в шестнадцатеричную строку

oct(X)

Преобразование целого числа в восьмеричную строку

 

1.2. Битовые операции

Оператор/ функция

Описание

X | Y

Побитовое или

X ^ Y

Побитовое исключающее или

X & Y

Побитовое и

X<<n

Битовый сдвиг влево на n битов

X>>n

Битовый сдвиг вправо на n битов

~X

Инверсия битов

X.bit_length()

Количество бит, необходимых для представления числа X в

 

двоичном виде, без учёта знака и лидирующих нулей

X.to_bytes(length, byteorder, *,

Возвращает строку байтов, представляющих число X

signed={True,False})

 

X.from_bytes(bytes, byteorder, *,

Возвращает число из данной строки байтов

signed={True,False})

 

 

2. Операции с логическим значением

Оператор

Описание

X and Y Логический оператор "И". Условие будет истинным если оба операнда истина.

X or Y

Логический оператор "ИЛИ". Если хотя бы один из операндов истинный, то и все

 

выражение будет истинным.

not X

Логический оператор "НЕ". Изменяет логическое значение операнда на противоположное.

 

Принадлежность

a in B

Возвращает истину, если элемент a присутствует в последовательности B, иначе

 

возвращает ложь.

a not in B Возвращает истину если элемента нет в последовательности.

 

Тождественность

X is Y

Возвращает истину, если X и Y указывают на один объект.

X is not Y Возвращает ложь, если X и Y указывают на один объект.

 

Операции сравнения

Оператор

Описание

X == Y

Проверяет равны ли X и Y. Если да, то условие становится истинным.

X != Y

Проверяет равны ли X и Y. Если нет, то условие становится истинным.

X <> Y

Проверяет равны ли X и Y. Если нет, то условие становится истинным.

X > Y

Проверяет больше ли значение X, чем значение Y. Если да, то условие

 

становится истинным.

X < Y

Проверяет меньше ли значение X, чем значение Y. Если да, то условие

 

становится истинным.

X >= Y

Проверяет больше или равно значение X, чем значение Y. Если да, то условие

 

становится истинным.

X <= Y

Проверяет меньше или равно значение X, чем значение Y. Если да, то условие

 

становится истинным.

 

3.Приоритет операций

Операция

Описание

**

Возведение в степень.

~ ,+, -

Комплиментарный оператор.

*, /, %, //

Умножение, деление, деление по модулю, целочисленное деление.

+, -

Сложение и вычитание.

>>, <<

Побитовые сдвиги.

&

Побитовое и.

^, |

Побитовое исключающее или, побитовое или.

<, <=, >, >=

Сравнение.

==, <>, !=

Проверка на равенство.

= , -=, +=, *= и т.п.

Операторы присваивания.

is, is not

Проверка на тождественность.

in, not in

Проверка на принадлежность.

and, or, not

Логические операторы.

4.Динамическая типизация.

Типы данных в языке Python определяются автоматически во время выполнения, а не в результате объявлений в программном коде. Переменные создаются при выполнении операции присваивания, могут ссылаться на объекты любых типов и им должны быть присвоены некоторые значения, прежде чем к ним можно будет обратиться.

Переменные – это записи в системной таблице, где предусмотрено место для хранения ссылок на объекты.

Объекты – это области памяти с объемом, достаточным для представления значений этих объектов. Каждый объект имеет два стандартных поля: описатель типа, используемый для хранения информации о типе объекта, и счетчик ссылок, используемый для определения момента, когда память, занимаемая объектом, может быть освобождена.

Ссылки – это указатели на объекты.

4.1.Разделяемые ссылки.

5.Синтаксис.

Все составные инструкции записываются в соответствии с одним и тем же общим шаблоном:

Основная инструкция:

Вложенный блок инструкции ̆

Если тело составных инструкций состоит только из простых, то возможна запись в одну строку: if x > y: print(x)

Конец отступа – это конец блока:

if x > y: x= 1 Y= 2

print (' следующая после if инструкция')

Круглые скобки не обязательны: if x < y вместо if (x < y)

Конец строки автоматически считается концом инструкции: x = 1 вместо x = 1;

; используется только в качестве разделителя простых инструкций, расположенных на одной строке: a = 1; b = 2; print(a + b)

Допускается записывать одну инструкцию в нескольких строках. Для этого достаточно заключить часть инструкции в пару скобок – круглых (), квадратных [] или фигурных {}:

X = (A + B + C + D)