Числа

int

class 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

abs

abs(x)

Возвращает int, абсолютное значение

abs(-3)
# 3

bin

bin(x)

Возвращает str, бинарное число из десятичного

bin(255)
# '0b11111111'

bin(1)
# '0b1'

bin(-45)
# '-0b101101'

cmp

cmp(x, y)

Возвращает int, результат сравнения

  • -1 если X < Y
  • 0 если X = Y
  • 1 если X > Y
cmp(2, 1)
# 1

chr

chr(x)

Возвращает str, строковое представление числа

chr(65)
# 'a'

divmod

divmod(x, y)

Возвращает tuple, целое и остаток от деления Х на У

divmod(10, 3)
# (3, 1)

hex

hex(x)

Возвращает str, шестнадцатиричное представление десятичного числа

hex(16)
# '0х10'

oct

oct(x)

Возвращает строку str, восьмеричное представление аргумента

oct(16)
# '0o20'

ord

ord(char)

Возвращает int, преобразованное из символа

pow

pow(x, y[, z])

Возвращает число, возведенное в степень

pow(2, 3)
# 8

pow(10, 2, 2)
# (10 ** 2)%2 = 0

round

round(x[, y=0])

Возвращает float, полученное в результате округления аргумента

round(2, 2)
# 2.0

round(0.49)
# 0

unichr

unichr(x)

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

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

# Битовое ИЛИ чисел 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

float

class float(obj)

Вещественное число.

Для точных расчетов необходимо использователь модуль decimal или модуль fractions для рациональных чисел.

10.
# 10.

11E20
# 11E20

2.5e-12
# 2.5e-12

0.3 - 0.1 - 0.1 - 0.1
# -2.7755575615628914е-17
float(7)
# 7.0

float("7.1")
# 7.1

float("Infinity")
# inf

float("-inf")
# -inf

float("Infinity") + float ("-inf")
# nan