int
(obj[, mode=10])Возвращает число
mode - система исчисления, от 2 до 36
Возбуждает ValueError
если преобразование не возможно
int('1')
# 1
int ("71s")
"""
Traceback (most recent са11 1ast):
File "<pyshell#9>", line 1, in <modu1e>
int ("71s")
Va1ueError: inva1id 1itera1 for int() with base 10: '71s'
"""
5 + 5
# 10
10 - 5
# 5
5 * 5
# 25
10 / 5
# 2
10 % 2
# 0
10 % 3
# 1
10 ** 3
# 1000
a = 0
a += 3
# 3
a -= 1
# 2
a *= 10
# 20
a /= 2
# 10
a %= 4
# 2
a **= 2
# 4
a &= 1
# аналогичен a = a & 1
a |= 1
# аналогичен a = a | 1
a ^= 1
# аналогичен a = a ^ 1
a >>= 1
# аналогичен a = a >> 1
a <<= 1
# аналогичен a = a << 1
0b101101
# двоичное число, 45
0o12
# восьмиречное число, 10
0xA
# шестнадцатеричное число, 10
# Битовое ИЛИ чисел x и y x = 100 # 01100100 y = 75 # 01001011 x | y # 01101111# Битовое исключающее ИЛИ чисел x и y x = 100 # 01100100 y = 250 # 11111010 x ^ y # 10011110# Битовое И чисел x и y x = 100 # 01100100 y = 75 # 01001011 x & y # 01000000# Число, полученное на основе x, биты которого сдвинуты на n влево. # Эквивалентно умножению числа x на двойку в степени n, (x * (2 ** n). # Отличается очень высокой скоростью выполнения по сравнению с обычным умножением x = 100 # 01100100 x << 1 # 11001000 x << 2 # 10010000 x = -127 # 10000001 x << 1 ## Число, полученное на основе x, биты которого сдвинуты на n вправо. # Эквивалентно делению числа x на двойку в степени n, (x / (2 ** n)). # Отличается очень высокой скоростью выполнения по сравнению с обычным делением # если число отрицательное, разряды слева заполняются 1 x = 100 # 01100100 x >> 1 # 00110010 x >> 2 # 00011001 x = -127 # 10000001 x >> 2 # 11100000# Число, полученное на основе x, все биты которого инвертированы. x = 100 # 01100100 ~x # 10011011
struct _longobject {
long ob_refcnt;
PyTypeObject *ob_type;
size_t ob_size;
long ob_digit[1];
};
ob_refcnt - счетчик ссылок на объект
ob_type - тип объекта
ob_size - размер данных
ob_digit - значение пременной