Встроенные функции

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)

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

any()

any(iter)

Возвращает True если хотя бы один из объектов интерируемого объекта True.

all()

all(iter)

Возвращает True если все элементы интерируемого объекта True.

breakpoint()

breakpoint()

New in version 3.7.

По умолчанию импортит pdb и вызывает pdb.set_trace()

compile()

compile(string, filename, kind[, flags=0[, dont_inherit]])

Компилирует строку в байт-код.

  • string - строка

  • filename - файл, в котором эта строка определена

  • kind - тип компилируемого кода
    • ‘single’ – для единственной инструкции

    • ‘exec’ – для множества инструкций

    • ‘eval’ – для выражений

  • flags - определяет, какие дополнительные особенности (включенные в модуль __future__) должны быть активированы.

    Эти особенности перечисляются в виде флагов, объявленных в модуле __future__, с помощью побитовой операции ИЛИ. (__future__.division.compiler_flag)

  • dont_inherit - если установлен, активируются только особенности, перечисленные в аргументе flags, – особенности, действующие в текущей версии, игнорируются.

delattr()

delattr(obj, attr)

удаляет атрибут из объекта

dir()

dir([obj])

Возвращает список, содержащий глобальные свойства и методы, или свойства и методы аргумента.

dir()
# ['__builtins__', '__doc__', '__name__', '__package__']

import os
dir(os)
# [...'read', 'remove', 'removedirs', ...]

enumerate()

enumerate(iter[, initial_value)

Возвращает объект итератор, который воспроизводит последовательность кортежей, содержащих порядковый номер итерации и значение, полученное от объекта iter.

a = enumerate((1, 2))

next(a)
# (0, 1)

next(a)
# (1, 2)

next(a)
# Traceback (most receпt са11 1ast):
#     File "<pyshe11#10>", 1iпе 1, iп <modu1e>
#         next(obj)
# Stopiteratioп

for i in enumerate((1, 2))
    print i
# (0, 1)
# (1, 2)

eval()

eval(x[, globals, locals])

Преобразует строковый объект, в объект питона, а также выполняет выражение аргумента

eval('[1, 2, 3, 4]')
# [1, 2, 3, 4]

exec()

exec(x[, globals, locals])

Выполняет выражение аргумента

filter()

filter(function, iter_object)

Возвращает список, состоящий из тех элементов объекта, для которых обработчик является истинной

Changed in version 3.x: возвращает объект генератор

filter(lambda x: x % 10 == 0, xrange(20))
# [0, 10]

Note

Проигрывает в скорости работы генераторам списка

import timeit

setup = "rows = [{'param1': i} for i in xrange(1000*1000)]"

a = "filter(lambda x: x['param1'] % 100000 == 0, rows)"
b = "[x for x in rows if x['param1'] % 100000 == 0]"

print(timeit.repeat(a, setup=setup, number=3))
# [0.3401670455932617, 0.3369150161743164, 0.3323078155517578]

print(timeit.repeat(b, setup=setup, number=3))
# [0.18962311744689941, 0.19053101539611816, 0.1930980682373047]

getattr()

getattr(obj, attr[, default])

Возвращает значение атрибута объекта

globals()

globals()

Возвращает словарь текущего модуля, который представляет глобальное пространство имен.

При вызове из функции или метода возвращает глобальное пространство имен для модуля, в котором была определена эта функция или метод.

hasattr()

hasattr(object, name)

Возвращает True, аргумент name является именем атрибута объекта object.

В противном случае возвращается значение False.

Аргумент name должен быть строкой.

hash()

hash(object)

Возвращает целочисленное значение хеша для объекта object (если это возможно).

Значения хешей в первую очередь используются в реализациях словарей, множеств и других объектов отображений.

Два объекта, которые признаются равными, имеют одинаковые значения хешей.

Изменяемые объекты не поддерживают возможность вычисления хеша, однако пользовательские объекты могут определять метод __hash__(), чтобы обеспечить поддержку этой операции.

help()

help([object])

Обращается к справочной системе во время интерактивных сеансов.

Аргумент object может быть строкой с именем модуля, класса, функции, метода, с ключевым словом или названием раздела в документации.

Если передается объект какого-либо другого типа, будет воспроизведена справочная информация для этого объекта.

При вызове без аргумента будет запущен инструмент предоставления интерактивной справки с дополнительной информацией.

id()

id(obj)

Возврващает число, уникальный идентификатор объекта

input()

input([message])

Возврващает str, строка введенное в stdin.

Warning

Во второй ветке возвращает число

input(u'Введите число\n')
# Введите число
# 1

isinstance()

isinstance(obj, type)

Возвращает True | False, если типом объекта является сравниваемый тип.

isinstance(1, int)
# True

isinstance(1, str)
# False

issubclass()

issubclass(obj, type)

Возвращает True | False, если объект является подклассом типа.

iter()

iter(object[, sentinel])

Возвращает итератор, воспроизводящий элементы объекта object.

Если аргумент sentinel опущен, объект object должен реализовать либо метод __iter__(), который создает итератор, либо метод __getitem__(), который принимает целочисленные аргументы со значениями, начиная с 0.

При наличии аргумента sentinel аргумент object интерпретируется иначе.

В этом случае объект object должен быть вызываемым объектом, не принимающим аргументов.

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

Если объект object не поддерживает итерации, будет возбуждено исключение TypeError.

len()

len(object)

Возвращает int, количесвто элементов в оъекте

len('ilnurgi')
# 7

locals()

locals()

Возвращает словарь, представляющий текущую локальную таблицу символов

locals()
# {'__builtins__': , '__package__': None, 'i': 'ilnur', ... }

map()

map(func, iter1[, iter2, ...])
  • func - функция, обработчик

  • iter - итерируемый объект

Применяет функцию к каждому элементу последовательности и возвращает список результатов.

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

Если количество элементов в nоследовательностях будет разным, то в качестве ограничения выбирается nоследовательность с минимальным количеством элементов.

Changed in version 3.Х: возвращает объект генератор

map(str, 'qw')
# ['q', 'w']

max()

max(iter)

Возвращает максимальный элемент итерирумого объекта

max([0, 6, 1])
# 6

min()

min(iter)

Возвращает минимальный элемент итерируемого бъекта

min('ilnurgi')
# 'i'

print()

print(*args, sep=' ', end='n', file=sys.stdout)

Вывод последовательности значений в файловый объект

print ('1', '2')

property()

property([fget[, fset[, fdel[, doc]]]])
  • fget - функция, возвращающая значение атрибута

  • fset - устанавливает новое значение атрибута

  • fdel - удаляет атрибут

  • doc - документация

Создает атрибут-свойство класса

class MyClass:

    def init (self, value):
        self.var = value

    @property
    def v(self):
        return self.var

    @v.setter
    def v(self, value):
        self.var = value

    @v.deleter
    def v(self):
        del self.var

range()

range([start=0, ] end [, step=1]])
  • start - начало

  • end - конечная позиция

  • step - шаг

Возвращает сгенерированный список.

Changed in version 3.x: с 3 версии возвращает генератор

a = range(3)
# range(0, 3)

range(1, 5, 2)
# range(1, 5, 2)

raw_input()

raw_input([comment])

Возврващает строку, полученную со stdin.

Warning

Только для второй ветки

x = raw_input('Введите текст\n')
# Введите текст
# ilnurgi.ru

print x
# 'ilnurgi.ru'

reduce()

reduce(function, items[, initial])
  • function - функция обработчик, принимает два параметра: накопленное и текущее значение

  • items - итерируемый объект

  • initial - начальное значение

Применяет функцию к парам элементов в итерируемом объекте и возвращает единственное накопленное значение.

Функция должна принимать два аргумента, накопленное и текущее значение.

repr()

repr(x)

Возвращает строковый объект аргумента.

repr([1, 2, 3, 4])
# '[1, 2, 3, 4]'

reversed()

reversed()

Создает итератор для обхода последовательности s в обратном порядке.

setattr()

setattr(object, name: str, value)

Создает в объекте object атрибут name и записывает в него значение value.

Выполняет ту же операцию, что и инструкция object.name = value.

sorted()

sorted(list[, key, reverse])
  • list - итерируемый объект

  • key - параметр для сортировки

  • reverse - True | False обратный порядок

Возвращает список, отсортированный

sorted(['567', '34566','1'], key=len)
# ['1', '567', '34566']

staticmethod()

staticmethod(func)

Создает статический метод класса.

Эта функция неявно вызывается декоратором @staticmethod.

sum()

sum(iter[, initial=0])
  • iter - последовательность

  • initial - начальное значение

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

sum((10, 20, 30, 40)), sum((10, 20, 30, 40), 2)
# 100, 102

super()

super(type[, object])

Возвращает объект, представляющий суперклассы типа type.

Чаще всего возвращаемый объект используется для вызова методов базового класса.

class B(A):

    def foo(self):
        super(B,self).foo()

type()

type(a)

Возвращает строку, тип аргумента

type(5)
# 'int'

type()

type(name, bases, dict)

Создает новый объект type (как как при объявлении нового класса).

В аргументе name передается имя типа, в аргументе bases – кортеж базовых классов, а в аргументе dict – словарь, содержащий определения, соответствующие телу класса.

Чаще всего эта функция используется при работе с метаклассами.

xrange()

xrange([start, ]end[, step])
  • start - начало

  • end - конечная позиция

  • step - шаг

Возвращает объект генератор.

Warning

Только для второй ветки

a = xrange(3)
for i in a:
    print i
# 0
# 1

unicode()

unicode(object)

возвращает юникод строку, преобразованный из аргумента

vars()

vars([obj])

возвращает идентификаторы

  • если вызывается без параметра внутри функции, то возвращается словарь с локальными идентификаторами

  • если вызывается без параметра вне функции, то возвращается словарь сс глобальными идентификаторами

  • при указании объекта, возвращается инденификаторы объекта (obj.__dict__)

zip()

zip(<Последовательность1>, <Последовательность2>, ...)

возвращает список кортежей, содержащий элемент последовательностей, которые расположены на одинаковом смещении.

Если количество элементов в nоследовательностях будет разным, то в результат nоnадут только элементы, которые существуют во всех nоследовательностях на одинаковом смеше­нии.

Changed in version 3.x: возвращает объект генератор

zip((1,2,3), (4,5,6), (7,8,9))
# [(1,4,7), (2,5,8), (3,6,9)]