You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
krasnikov_blog/posts/python_functions.mdx

265 lines
11 KiB

---
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')
```