Python build-in functions

abs(x)абсолютное значение, если объект реализует метод__abs__()aiter(async_iterable)возвращает асинхронный итератор для асинхронного итерируемого объекта. Аналогx.__aiter__()all(iterable)вернетTrue, если все эелементы итерируемого объектаTrue, иначеFalseany(iterable)вернетTrue, если любой (первый встречный) элемент итерируемого объектаTrue, иначеFalse- awaitable
anext(async_iterator[, default])- когда вызывается в await, вернет следующее значение из асинхронного генератора. Вызывает__anext__()асинхронного итератора. default вернется, когда подниметсяStopAsyncIteration(почвилось в 3.10) ascii(object)как иrepr(), возвращает строку, содержащую человекочитаемое представление объекта, но экранирует не-ASCII-символы в строкеbin(x)int -> bin- class
bool() breakpoint(*args, **kws)вызывает отладчик в точке определения- class
bytearray([source[, encoding[, errors]]])новый байтаррай объект - class
bytes([source[, encoding[, errors]]])новый байт объект callable(object)если объект вызываемый ->True, иначе ‘False`chr(i)-> строковая репрезентация символа с Unicode-номером i@classmethodmethod -> classmwthod. Начиная с 3.9 может декорировать дескрипторы (типproperty()). В 3.10 получил__module__,__name__,__qualname__,__doc__,__annotations__,__wrapped__compile(source, filename, mode, flags=0, dont_inherit=False, optimize=- 1)- class
complex([real[, imag]])string/number -> complex number delattr(object, name)name - это строкове имя атрибута object. Аналогdel x.foobrdir([object])без аргументов ворзращает спиоск имен локального scope (смотри [python-namespaces]). С аргументом - возвращает список атрибутов обхекта. Если у объекта есть__dir__()будет вызван этот ментод (это позволяет определить__getattr__()или__gettatribute__()для переопределения способа возврата списка атрибутов). Если__dir__()не определен - функция пытается выдернуть имена из__dict__. Для разных объектов поведение отличается:- если объект Модуль - в список включены атрибуты
- если type или класс - имена атрибутов и рекурсивно имена атрибутов унаследованных классов
divmod(a, b)два некомплексных числа -> пара чисел, состоящая из их частного и остатка при использовании целочисленного деления. Для int аналог(a // b, a % b). Для float аналог(math.floor(a / b), a % b)-
enumerate(iterable, start=0)-> enumerate объект,__next__()метод которого возвращает кортеж с порядковым номером и значением из последовательности (дефолтный номер старта 0). Аналог;def enumerate(sequence, start=0): n = start for elem in sequence: yield n, elem n += 1 eval(expression[, globals[, locals]]). Аргументы представляют собой строку и необязательные глобальные и локальные переменные. globals должен быть словарем. locals может быть любым отображением. Аргумент оценивается как выражение python с использованием отображений globals и locals в качестве глобального и локального пространства имен. Результатом функции будет выполнение оцененного выражения. Подробнееexec(object[, globals[, locals]])реализует динамическое выполнение кода. Объект - это либо строка либо объек5т кода. Строка анализируется как набор операторов, которая будет выполнена, если не поднимается ошибка. Код просто выполняется. Подробннее- Отличие exec и eval тут. Вкратце - eval принимает только одно выражение, exec может принять целый блок кода. При этом eval возвращает результат вычислений, а exec всегда игнорирует.
filter(function, iterable)- создает итератор из элементов итерируемого объекта, для которых функция возвращаетTrue. аналог(item for item in iterable if function(item))- class
float([x])str(decimale number with string representation)/int -> float. Для строковой сигнатуры игнорирует пробелы с обоих концов и знаки перевода строки. Подробнее format(value[, format_spec])- class
frozenset([iterable]) getattr(object, name[, default])-> значение атрибута по строковому имени. Аналогичноx.foobarhasattr(object, name)-> bool для атрибута по его строковому имени, если existglobals()-> словарь имен текущего неймспейса уровня модуля. Смотри [python-namespaces]hash(object)-> int hash valuehelp([object])вызов встреонной справкиhex(x)int -> hexid(object)-> int id значение объекта. Смотри [python-datamodel] - в cpython это адрес памяти объектаinput([prompt])читает инпут, конвертит в строку и возвращает. Параметр prompt устанавливает значение строки приглашенияint([x])class int(x, base=10)num/str -> int. Если определенsx.__int__(),x.__index__(),x.__trunc__()- вернет из них. Про base подробнее тутisinstance(object, classinfo)-> boolissubclass(class, classinfo)-> bool-
iter(object[, sentinel])возвращает итератор объекта. Если не передан второй параметр, объект должен поддерживать протокол итератора (реализовать__iter__()) или протокол последовательности (__getitem__()начиная с 0). Если передан второй аргумент - объект должен быть вызываемым. В этом случае при каждом__next__()полученного итератора будет вызываться объект без аргументов, если возвращенное значение эквивалентно sentinel, будет поднятStopIterationfrom functools import partial with open('mydata.db', 'rb') as f: for block in iter(partial(f.read, 64), b''): process_block(block) len(s)- class
list([iterable]) locals()-> словарь имен локальной области (на уровне модуля тоже самое что иglobals()). Смотри [python-namespaces]map(function, iterable, ...)-> итератор, в котором функция применяется к каждому элементу итерируемого объекта. Если жополнительные параметры переданы - они передаются как аргументы в функцию-
max(iterable, *[, key, default])max(arg1, arg2, *args[, key]). Если передан один объект - это должен быть итерируемый объект. key - одноаргументная функция, определяющая порядок определения максимума. default возвращается, если итерируемый объект пустой.>>> d = {'aim':99, 'aid': 45, 'axe': 59, 'big': 9, ... 'short': 995, 'sin':12, 'sword':1, 'friend':1000, ... 'artwork':23} >>> max(d.keys(), key=lambda x: len(x)) 'artwork' >>> max(d.keys(), key=lambda x: d[x]) 'friend' - class
memoryview(object)подробнее min(iterable, *[, key, default])min(arg1, arg2, *args[, key])см. max()next(iterator[, default])вызывает__next__()итератораnext(iterator[, default])-> объект, базовый для всех классовoct(x)int -> octopen(file, mode='r', buffering=- 1, encoding=None, errors=None, newline=None, closefd=True, opener=None)открывает файл и возвращает связанный file-объект. Смотри подробнее в [python-reading-and-writing-files]ord(c)str one Unicode character-> int Unicode pointpow(base, exp[, mod])-> base^exp с опциональным делением по модулю mod. Еквивалент:base ** expилиbase * exp% modprint(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)-
class
property(fget=None, fset=None, fdel=None, doc=None)возвращает атрибут-свойство. fget функция которая возвращает значение атрибута, fset устанавливает, fdel удаляет, doc - строки документации.class C: def __init__(self): self._x = None def getx(self): return self._x def setx(self, value): self._x = value def delx(self): del self._x x = property(getx, setx, delx, "I'm the 'x' property.")Можно и через декоратор
@property- в примере ниже мы устанавливаем getter, setter и deleter (сам декоратор@propertyпо дефолту устанавливает getter) - методы декоратора@propertyclass C: def __init__(self): self._x = None @property def x(self): """I'm the 'x' property.""" return self._x @x.setter def x(self, value): self._x = value @x.deleter def x(self): del self._xСмотри подробнее [python-datamodel]
- class
range(stop)classrange(start, stop[, step])-> объект Range. Подробнее repr(object)reversed(seq)-> итератор с последовательностью в обратном порядке. У последовательности должен быть реализован__reversed__()round(number[, ndigits])- class
set([iterable]) setattr(object, name, value)см. getattr()-
class slice(stop)classslice(start, stop[, step])-> slice объект.itertools.islice()вернет итераторs = slice(0, 5, 2) this = [1,2,3,4,5,6,7] print(this[s]) sorted(iterable, /, *, key=None, reverse=False)-> sorted list. key определяет функцию, которая будет оценивать принцип сортировки. Алгоритм сортировки использует только сравнения между элементами. Хотя определения метода__lt__()будет достаточно для сортировки, рекомендуется реализовать все шесть расширенных сравнений. Смотри [python-datamodel]. Смотри [python-sorting]-
@staticmethodclass C: @staticmethod def f(arg1, arg2, ...): ...Или так:
def regular_function(): ... class C: method = staticmethod(regular_function)В 3.10 получил
__module__,__name__,__qualname__,__doc__,__annotations__,__wrapped__. Смотри [python-datamodel] - class
str(object='')classstr(object=b'', encoding='utf-8', errors='strict')-> str version of object sum(iterable, /, start=0)-> сумма слева направою Для флотов лучшеmath.fsum()[mathematic-in-python]-
class
super([type[, object-or-type]])- возвращает прокси-объект, который делегирует вызовы методов родительскому или одноуровневому классу. Это полезно для доступа к унаследованным методам, которые были переопределены в классе. Подробнее. Смотри [python-super-guide]class C(B): def method(self, arg): super().method(arg) # This does the same thing as: # super(C, self).method(arg) - class
tuple([iterable]) -
class type(object)class type(name, bases, dict, **kwds)с одним аргументов возвращает тип объекта (эквивалентobject.__class__). С тремя аргументами возвращает новый объектtype. Это идентично:class X: a = 1 X = type('X', (), dict(a=1)) vars([object])->__dict__атрибут, там где он определен. Без аргументов vars эквивалентен locals()-
zip(*iterables, strict=False)-> итератор, составленный из последовательностей. Длина - по наименьшей длине. Насиная с 3.10strict=Trueподнимет ошибку, если длина последовательностей разная. Подробнее. Смотри [itertools] и [more-itertools] для большего функционала>>> for item in zip([1, 2, 3], ['sugar', 'spice', 'everything nice']): ... print(item) ... (1, 'sugar') (2, 'spice') (3, 'everything nice') __import__(name, globals=None, locals=None, fromlist=(), level=0)испорт модуля. Для рутинных задач не требуется. Смотри подробнее. Если нужно просто заимпортить модуль по имени - используйimportlib.import_module()из [python-import-tools]
Смотри еще: