---
title: Python. Функции
description: Интерпретатор Python имеет ряд встроенных функций и типов, которые всегда доступны.
date: '2021-10-24'
---

# abs(x)

Возвращает абсолютное значение числа. Аргументом может быть целое число, число с плавающей запятой или реализация объекта __abs__(). 
Если аргумент является комплексным числом, возвращается его величина.

## Пример

```python
print(abs(-4))

# 4
```

*** 


# bin(x)
Преобразование целого числа в двоичную строку с префиксом “0b”. 

Результатом является допустимое выражение Python. 
Если X не является intобъектом Python, он должен определить __index__() метод, который возвращает целое число. Некоторые примеры:
```python
print(bin(7))

# 0b111
```

*** 

# chr(i)
Возвращает строку, представляющую символ, кодовой точкой которого в Юникоде является целое число i. 
Например, chr(97)возвращает строку 'a', в то время chr(8364)как возвращает строку '€'. Это обратное ord().

```python
print(chr(97))

# a
```

*** 

# ord(i)
Учитывая строку, представляющую один символ Юникода, верните целое число, представляющее кодовую точку Юникода этого символа. 
Например, ord('a') возвращает целое 97 число и ord('€') (знак евро) возвращает 8364. Это обратное chr().

```python
print(ord('a'))

# 97
```

*** 

# dir(i)
Без аргументов возвращает список имен в текущей локальной области. С помощью аргумента попытайтесь вернуть список допустимых атрибутов для этого объекта.

```python

class Shape:
    def __dir__(self):
        return ['area', 'perimeter', 'location']
s = Shape()
print(dir(s))

# ['area', 'location', 'perimeter']
```

***

# divmod(i, j) 
Функция divmod() возвращает кортеж, содержащий частное и остаток. Не поддерживает комплексные числа. 
Со смешанными типами операндов применяются правила для двоичных арифметических операторов.

Для целых результат аналогичен (a // b, a % b).

```python
print(divmod(5, 3))

#  (1, 2 )
```

*** 

# eval()
Аргументами являются строка и необязательные глобальные и локальные переменные. Если предусмотрено, глобальные должен быть словарь. 
Если предусмотрено, локальные может быть любым объектом сопоставления.

```python
x = 1
print(eval('x + 1'))

#  2
```

*** 

# float()
Возвращает число с плавающей запятой, построенное из числа или строки x.

```python
print(float('+1.23'))
#  1.23

print(float('-Infinity'))
# -inf
```

*** 

# help()
Вызовите встроенную справочную систему. 

```python
print(help())
#  Welcome to Python 3.10's help utility!

print(help('abs'))
# abs(x, /)
# Return the absolute value of the argument.
```

***

# hex(x)

Преобразуйте целое число в строчную шестнадцатеричную строку с префиксом “0x”.
Если x не является intобъектом Python, он должен определить __index__()метод, который возвращает целое число. Некоторые примеры:

```python
print(hex(255))
#  0xff

```

***

# len(x)
Возвращает длину (количество элементов) объекта. 
Аргументом может быть последовательность (например, строка, байты, кортеж, список или диапазон) или коллекция (например, словарь, набор или замороженный набор).

```python
x = [1,2,3,4,5,6]
print(len(x))
#  6
```

***

# map(i, j)
map() перебирает элементы входного итерируемого (или итерируемых) и возвращает итератор, 
который является результатом применения функции преобразования к каждому элементу в исходном входном итерируемом.

```python
def plus(a, b, c):
  return a + b +c

# функция 'plus' применяется к элементам 
# из всех последовательностей параллельно
x = map(plus, [1, 2], [3, 4], [5, 6])
print(list(x))
# [9, 12]
```

***

# max(x)
Возвращает самый большой элемент в итерации или самый большой из двух или более аргументов.

```python
x = [1, 3, 5, 1, 2]

print(max(x))
# 5
```

***

# min(x)
Возвращает наименьший элемент в итерируемом или наименьший из двух или более аргументов.

```python
x = [1, 3, 5, 1, 2]

print(min(x))
# 1
```

***

# open()

Открыть файл и возвращает соответствующий файловый объект. Если файл не может быть открыт, OSError возникает проблема. См. Чтение и запись файлов.

```python
    f = open('workfile', 'r', encoding="utf-8")

Варианты использования режимов:

* 'r' - Открывает файл только для чтения. Указатель файла помещается в начале файла. Это режим "по умолчанию".
* 'rb' - Открывает файл в бинарном режиме только для чтения. Указатель файла помещается в начале файла. Это режим "по умолчанию".
* 'r+' - Открывает файл для чтения и записи. Указатель файла помещается в начало файла.
* 'rb+' - Открывает файл в бинарном режиме для чтения и записи. Указатель файла помещается в начале файла. Это режим "по умолчанию".
* 'w' - Открывает файл только для записи. Перезаписывает файл, если файл существует. Если файл не существует, создает новый файл для записи.
* 'wb' - Открывает файл в бинарном режиме только для записи. Перезаписывает файл, если файл существует. Если файл не существует, создает новый файл для записи.
* 'w+' - Открывает файл для записи и чтения. Перезаписывает существующий файл, если файл существует. Если файл не существует, создается новый файл для чтения и записи.
* 'wb+' - Открывает файл в бинарном режиме для записи и чтения. Перезаписывает существующий файл, если файл существует. Если файл не существует, создается новый файл для чтения и записи.
* 'a' - Открывает файл для добавления. Указатель файла находится в конце файла, если файл существует. То есть файл находится в режиме добавления. Если файл не существует, он создает новый файл для записи.
* 'ab' - Открывает файл в бинарном режиме для добавления. Указатель файла находится в конце файла, если файл существует. То есть файл находится в режиме добавления. Если файл не существует, он создает новый файл для записи.
* 'a+' - Открывает файл для добавления и чтения. Указатель файла находится в конце файла, если файл существует. Файл открывается в режиме добавления. Если файл не существует, он создает новый файл для чтения и записи.
* 'ab+' - Открывает файл в бинарном режиме для добавления и чтения. Указатель файла находится в конце файла, если файл существует. Файл открывается в режиме добавления. Если файл не существует, он создает новый файл для чтения и записи.

    print(f.read())
# 1
```

***

# sorted()

Функция sorted() возвращает новый отсортированный список итерируемого объекта (списка, словаря, кортежа). По умолчанию она сортирует его по возрастанию.

```python
x = [1, 3, 5, 1, 2]

print(sorted(x))

# [1, 1, 2, 3, 5]
```

*** 

# sum()

Суммирует начало и элементы итерации слева направо и возвращает итоговое значение. 
Элементы итерации обычно представляют собой числа, а начальное значение не может быть строкой.

```python
x = [1, 3, 5, 1, 2]

print(sum(x))

# 12
```

*** 

# zip()
Выполняйте параллельную итерацию по нескольким итерациям, создавая кортежи с элементом из каждого.

```python
for item in zip([1,2,3], ['sugar', 'spice', 'everything nice']):
    print(item)

# (1, 'sugar')
# (2, 'spice')
# (3, 'everything nice')

```

