Включите исполнение JavaScript в браузере, чтобы запустить приложение.
17 фев 2025

Встроенные функции Python для начинающих программистов

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

abs 

abs() используется для возврата абсолютного значения числа.

#  integer number     

integer = -20  

print('Absolute value of -40 is:', abs(integer))  

#  floating number  

floating = -20.83  

print('Absolute value of -40.83 is:', abs(floating))  
py

all и any

Функции any и all могут быть объединены с генераторным выражением, чтобы определить, соответствуют ли элементы в итерационной переменной заданному условию.

def palindromic(sequence):

    """Return True if the sequence is the same thing in reverse."""

    return all(

        n == m

        for n, m in zip(sequence, reversed(sequence))

    )
py

ascii 

ascii() возвращает строку с содержанием представления object. Метод экранирует другие символы в строке с помощью символов \x, \u или \ubiscape.

normalText = 'Python is interesting'  

print(ascii(normalText))  

otherText = 'Python is interesting'  

print(ascii(otherText))  

print('Pyth\xf6n is interesting')  
py

bin 

binary или bin() возвращает двоичное значение указанного числа.

 number= 15

# convert 15 to its binary equivalent 

print('The binary equivalent of 15 is', bin(number))

# Output: The binary equivalent of 15 is 0b1111
bash

bool 

bool() выдает значение True или False. Обычно она используется для проверки состояния оператора или выражения.

test = 254

# bool() with an integer number

print(test, 'is', bool(test))

test1 = 25.14

# bool() with a floating point number

print(test1, 'is', bool(test1))

test2 = 'Python is the best'

# bool() with a string

print(test2, 'is', bool(test2))

test3 = True

# bool() with True

print(test3, 'is', bool(test3))
py

bytearray 

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

string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytearray(string, 'utf-8')

print(arr)

bytearray(b'Python is interesting.')
py

 bytes 

Используется для возврата объекта bytes. Это неизменяемая версия функции byte array().

string = "Python is interesting."

# string with encoding 'utf-8'

arr = bytes(string, 'utf-8')

print(arr)
py

callable 

Эта встроенная функция проверяет и возвращает значение true, если переданный объект кажется доступным для вызова. Если нет, то возвращает значение false.

x = 8  

print(callable(x))  
py

chr 

Метод chr() преобразует целое число в его символ unicode и возвращает его.

# Calling function  
result = chr(102) # It returns string representation of a char  
result2 = chr(112)  
# Displaying result  
print(result)  
print(result2)  
# Verify, is it string type?  
print("is it string type:", type(result) is str)  

ValueError: chr() arg not in range(0x110000)
py

classmethod 

Функция возвращает метод класса для данной функции. Метод, который вы хотите преобразовать в метод класса, должен принимать class (cls) в качестве первого аргумента. Так же, как метод экземпляра получает instance (self).

Метод class привязан к классу, а не к объекту. Можно вызывать метод класса как с помощью class, так и с помощью object.

class School:

    # class variable

    name = 'ABC School'

    def school_name(cls):

        print('School Name is :', cls.name)

# create class method

School.school_name = classmethod(School.school_name)

# call class method

School.school_name()
py

compile

Принимает исходный код в качестве входных данных и возвращает объект кода, который позже может быть выполнен функцией exec().

codeInString = 'a = 5\nb=6\nmul=a*b\nprint("mul =",mul)'

codeObject = compile(codeInString, 'multiplyNumbers', 'exec')

exec(codeObject)

# Output: mul = 30
bash

delattr 

Применяется для удаления атрибута из класса. Она принимает два параметра: первый — это объект класса, а второй — атрибут, который мы хотим удалить. После удаления атрибута он больше не доступен в классе и выдает ошибку при попытке вызвать его с помощью объекта class.

class Coordinate:

  x = 10

  y = -5

  z = 0

point1 = Coordinate() 

print('x = ',point1.x)

print('y = ',point1.y)

print('z = ',point1.z)

delattr(Coordinate, 'z')

print('--After deleting z attribute--')

print('x = ',point1.x)

print('y = ',point1.y)

# Raises Error

print('z = ',point1.z)

x =  10

y =  -5

z =  0

--After deleting z attribute--

x =  10

y =  -5

Traceback (most recent call last):

  File "python", line 19, in <module>

AttributeError: 'Coordinate' object has no attribute 'z'
py

dict 

Для создания словаря используется функция dict() или dictionary. Она принимает любое количество пар ключ-значение в качестве аргументов и создает словарь с этими аргументами.

num = dict (x = 10, y = 15)

print (“numbers = “, num)

print (type (num))

empty = dict ()

print (“empty =”, empty)

print (type (empty))
py

divmod 

Функция нужна для получения остатка и частного от двух чисел. Эта функция принимает два числовых аргумента и возвращает кортеж. Оба аргумента обязательные и числовые.

# Python divmod() function example  

# Calling function  

result = divmod(10,2)  

# Displaying result  

print(result)

(5, 0)
py

enumerate 

Добавляет счетчик к iterable и возвращает его как объект enumerate (итератор с индексом и значением).

seasons = ['Spring', 'Summer', 'Fall', 'Winter']

>>> list(enumerate(seasons))

[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

>>> list(enumerate(seasons, start=1))

[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

def enumerate(iterable, start=0):

    n = start

    for elem in iterable:

        yield n, elem

        n += 1
py

eval 

Анализирует выражение, переданное этому методу, и запускает выражение (код) python в программе.

# Perimeter of Square

def calculatePerimeter(l):

    return 4*l

# Area of Square

def calculateArea(l):

    return l*l

expression = input("Type a function: ")

for l in range(1, 5):

    if (expression == 'calculatePerimeter(l)'):

        print("If length is ", l, ", Perimeter = ", eval(expression))

    elif (expression == 'calculateArea(l)'):

        print("If length is ", l, ", Area = ", eval(expression))

    else:

        print('Wrong Function')

        break

Type a function: calculateArea(l)

If length is  1 , Area =  1

If length is  2 , Area =  4

If length is  3 , Area =  9

If length is  4 , Area =  16
py

exec 

Подходит для динамического выполнения программы на Python, которая может быть как строковым, так и объектным кодом. Она принимает большие блоки кода, в отличие от функции eval(), которая принимает только одно выражение.

# get an entire program as input

program = input('Enter a program:')

# execute the program

exec(program)

Enter a program: [print(item) for item in [1, 2, 3]]

1

2

3
py

filter

Применяется для получения отфильтрованных элементов. Эта функция принимает два аргумента. Первый — это функция, а второй — итерируемый объект. Функция filter возвращает последовательность элементов итерируемого объекта, для которых функция возвращает значение true.

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

# Python filter() function example  

def filterdata(x):  

 if x>5:  

return x

# Calling function  

result = filter(filterdata,(1,2,6))  

# Displaying result  

print(list(result))  
py

format 

Возвращает отформатированное представление заданного значения.

# decimal formatting

decimal_value = format(123, 'd')

print("Decimal Formatting:", decimal_value)

# binary formatting

binary_value = format(123, 'b')

print("Binary Formatting:", binary_value)

Decimal Formatting: 123

Binary Formatting: 1111011
py

frozenset 

frozenset() принимает итерируемый объект в качестве входных данных и делает его неизменным. Функция делает итерируемые объекты неизменяемыми, «‎замораживая» их.

# tuple of vowels

vowels = (‘a’, ‘e’, ‘i’, ‘o’, ‘u’)

fSet = frozenset(vowels)

print(‘The frozen set is:’, fSet)

print(‘The empty frozen set is:’, frozenset())

# frozensets are immutable

fSet.add(‘v’)

The frozen set is: frozenset({‘a’, ‘o’, ‘u’, ‘i’, ‘e’})

The empty frozen set is: frozenset()

Traceback (most recent call last):

  File “<string>, line 8, in <module>

    fSet.add(‘v’)

AttributeError: ‘frozenset’ object has no attribute ‘add’
bash

getattr 

setattr() нужна для присвоения значения атрибуту объекта. Может возникнуть ситуация, когда нужно получить значения, присвоенные атрибутам. Для этого используется встроенная функция Python getattr().

class Employee:

    name = 'David'

    salary = 55000

    designation = 'Marketing Head'

e = Employee()  

print('Salary of David is:', getattr(e, 'salary'))

#This is equivalent to

print('Salary of David is:', e.salary)

Salary of David is: 55000

Salary of David is: 55000
bash

globals 

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

car_brand = 'Jaguar'

print('Old Car:', car_brand)

globals()['car_brand'] = 'Ferrari'

print('New Car:', car_brand)

print('')

name = 'Rocky'

def Name():

    name = globals()['name']

    name = 'Charlie'

    print ('global variable myname inside function:', name)

    return

Name()

print ('global variable myname in global scope:', name)

Old Car: Jaguar

New Car: Ferrari

global variable myname inside function: Charlie

global variable myname in global scope: Rocky
py

hasattr

Объекты, содержащиеся в классе, можно рассматривать как схему для класса, которая отображает его атрибуты и поведение. Может потребоваться проверить наличие атрибута, который занят или содержится в классе. Для выполнения того же действия можно использовать hasattr().

l = [4, 3, 2, 0]                              

print(any(l))                                   

l = [0, False]  

print(any(l))  

l = [0, False, 5]  

print(any(l))  

l = []  

print(any(l))  

True

False

True

False
py

hash 

hash() применяется для шифрования данных в неузнаваемое значение.

# hash for integer unchanged

print('Hash for 181 is:', hash(181))

# hash for decimal

print('Hash for 181.23 is:',hash(181.23))

# hash for string

print('Hash for Python is:', hash('Python'))

Hash for 181 is: 181

Hash for 181.23 is: 530343892119126197

Hash for Python is: 2230730083538390373
py

 hex 

Преобразовывает целое число в эквивалентную шестнадцатеричную строку.

number = 435

print(number, 'in hex =', hex(number))

number = 0

print(number, 'in hex =', hex(number))

number = -34

print(number, 'in hex =', hex(number))

returnType = type(hex(number))

print('Return type from hex() is', returnType)

Output

435 in hex = 0x1b3

0 in hex = 0x0

-34 in hex = -0x22

Return type from hex() is <class 'str'>
py

 id 

id() подходит для возврата уникального идентификационного значения объекта, хранящегося в памяти.

a = 10

b = 14

text1 = 'Hello'

text2 = 'Hi'

print(id(a) == id(b))

print(id(text1) == id(text2))

False

False
py

 import 

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

Когда требуется импортировать модуль в середине выполнения кода, можно использовать функцию __import__ (). 

mathematics = __import__('math', globals(), locals(), [], 0)

print(mathematics.fabs(-2.5))

2.5
py

input 

Подходит для получения входных данных от пользователя. Функция считывает строку ввода, преобразует входные данные в строку и возвращает выходные данные.

# get input from user

inputString = input('Enter a string: ')

print('Input String :', inputString)

Enter a string: Python is fun

Input String : Python is fun
py

int 

Применяется для преобразования указанной строки или числа в целочисленное значение.

# integer

print("int(123) is:", int(123))

# float

print("int(123.23) is:", int(123.23))

# string

print("int('123') is:", int('123'))

Output

int(123) is: 123

int(123.23) is: 123

int('123') is: 123
py

isinstance 

isinstance () проверяет, является ли объект экземпляром указанного класса. Можно проверить, является ли объект или переменная экземпляром типа или класса. Если в программе присутствует наследование, то функцию можно использовать для проверки того, является ли указанный класс родительским классом объекта.

class Foo:

a = 5

fooInstance = Foo()

print(isinstance(fooInstance, Foo))

print(isinstance(fooInstance, (list, tuple)))

print(isinstance(fooInstance, (list, tuple, Foo)))
py

iter 

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

# list of vowels

vowels = ["a", "e", "i", "o", "u"]

# iter() with a list of vowels

vowels_iter = iter(vowels)

print(next(vowels_iter))

print(next(vowels_iter))

print(next(vowels_iter))

print(next(vowels_iter))

print(next(vowels_iter))

a

e

i

o

u
py

len 

Подходит для вычисления длины любого итерируемого объекта, передаваемого в качестве параметра функции len().

string = 'Hello World'

print('Length of', string, 'is :', len(string))

my_bytes = b'Good Evening'

print('Length of', my_bytes, 'is :', len(my_bytes))

Length of Hello World is : 11

Length of b'Good Evening' is : 12
py

locals 

В локальной таблице символов хранится информация, необходимая для локальной области действия программы. Доступ к информации в локальной таблице символов можно получить с помощью locals (). Локальная область действия может находиться внутри функции или класса.

class local:

    l = 50

    # locals inside a class

    print('\nlocals() value inside class\n', locals())

locals() value inside class

 {'__module__': '__main__', '__qualname__': 'PLocal', 'l': 50}
py

map 

map() помогает обрабатывать и преобразовывать все объекты в виде итераций, не прибегая к методу mapping. Когда вам нужно применить функцию преобразования к каждому элементу в iterable и превратить его в новый iterable, можно применять функцию map().

def square(n):

    return n*n

numbers = (1, 2, 3, 4)

result = map(square, numbers)

print(result)

# converting the map object to set

result = set(result)

print(result)

<map object at 0x7f722da129e8>

{16, 1, 4, 9}
py

max 

Функция max принимает входные данные и возвращает элемент с наибольшим значением в этой итерируемой переменной.

number = [3, 2, 8, 5, 10, 6]

largest_number = max(number);

print("The largest number is:", largest_number)

The largest number is: 10
py

memoryview 

Объекты memoryview() позволяют Python напрямую считывать и записывать внутренние байтовые данные объекта, поддерживающего протокол buffer.

my_byte_array = bytearray('ABCDE', 'utf-8')

print(my_byte_array)

# Create memoryview object

mv = memoryview(my_byte_array)

print(type(mv))   # displays the type of variable mv

print(mv)  # displays memory location of the created memoryview object

# access memory view's index

print(mv[0])

print(mv[2])

# create byte from memory view

print(bytes(mv[0:3]))

# create list from memory view

print(list(mv[0:5]))

bytearray(b'ABCDE')

<class 'memoryview'>

65

67

b'ABC'

[65, 66, 67, 68, 69]
py

 min 

Возвращает наименьший элемент в цикле итераций. Ее также можно использовать для поиска наименьшего элемента между двумя или более параметрами.

number = [3, 2, 8, 5, 10, 6]

smallest_number = min(number);

print("The smallest number is:", smallest_number)

The smallest number is: 2
py

next 

Отвечает за возврат следующего элемента в итераторе. 

number = iter([256, 32, 82]) # Creating iterator  

# Calling function  

item = next(number)   

# Displaying result  

print(item)  

# second item  

item = next(number)  

print(item)  

# third item  

item = next(number)  

print(item) 

256

32

82
py

object 

object () возвращает объект, не обладающий никакими функциями или атрибутами. Этот объект будет рассматриваться как базовый для всех классов.

test = object()

print(type(test))

print(dir(test))

<‍class 'object'‍>

['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', 

'__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', 

'__init__', '__init_subclass__', '__le__', '__lt__', '__ne__',

'__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', 

'__sizeof__', '__str__', '__subclasshook__']
py

ord 

Возвращает целое число, представляющее символ Юникода.

print(ord('5'))    # 54

print(ord('A'))    # 31

print(ord('$'))    # 36

54

31

36
py

print 

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

print("Python is fun.")

a = 5

# Two objects are passed

print("a =", a)

b = a

# Three objects are passed

print('a =', a, '= b')

Python is fun.

a = 5

a = 5 = b
py

property 

Подходит для создания свойства класса.

class Pet:

   def __init__(self, name):

       self._name = name

 def get_name(self):

       return self._name

def set_name(self, name):

       self._name = name

 def del_name(self):

       del self._name

 name = property(get_name, set_name, del_name)

dog = Pet("Bruno")

print(dog.name)

dog.name = "Mars"

print(dog.name)

del dog.name

Bruno

Mars
py

range 

Генерирует последовательность чисел.

numbers = range(4)

for i in numbers:

    print(i)
py

 repr 

Специальный метод для представления объектов класса в виде строки.

var = 'foo'

print(repr(var))

'foo'
py

 set 

Создает набор в Python.

print(set())

# from string

print(set('Python'))

# from tuple

print(set(('a', 'e', 'i', 'o', 'u')))

# from list

print(set(['a', 'e', 'i', 'o', 'u']))

# from range

print(set(range(5)))
py

setattr 

Нужна для присвоения нового значения атрибуту объекта/экземпляра.

class Person:

    name = 'Alan'

p = Person()

print('Before modification:', p.name)

# setting name to 'Pol'

setattr(p, 'name', 'Pol)

print('After modification:', p.name)

Before modification:Alan

After modification: Pol
py

 sorted 

Сортирует элементы итерационной таблицы в порядке возрастания и возвращает ее.

vowels_list = ['e', 'a', 'u', 'o', 'i']

print('Sorted Vowels:', sorted(vowels_list))

# Output: Sorted Vowels: ['a', 'e', 'i', 'o', 'u']
py

sum 

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

s = sum([6, 2,4 ])  

print(s)  

s = sum([6, 2, 4], 11)  

print(s)  

12, 23
py

type 

Функция позволяет узнать, какой тип данных сейчас используется.

x = 5

print(type(x))

s = 'xyz’

print(type(s))

from collections import OrderedDict

od = OrderedDict()

print(type(od))

class Data:

pass

d = Data()

print(type(d))

<class 'int'>

<class 'str'>

<class 'collections.OrderedDict'>

<class '__main__.Data'>
py

 vars 

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

class Person:

  name = "John"

  age = 36

  country = "Norway"

x = vars(Person)

print(x)

{'__module__': '__main__', 'name': 'John', 'age': 36, 'country': 'Norway', '__dict__': <attribute '__dict__' of 'Person' objects>, '__weakref__': <attribute '__weakref__' of 'Person' objects>, '__doc__': None
py

zip 

Принимает повторяющиеся значения, объединяет их в кортеж и возвращает его.

names = ("John", "Jane", "Jade", "John")

ages = (2, 4, 6)

zipped = zip(names, ages)

for(x,y) in zipped:

    print(x,y)

# John 2

# Jane 4

# Jade 6
py