7.0 KiB
Отчет по теме 4
Цель темы: получение навыков использования встроенных функций языка Python.
Терехов Фёдор Валерьевич, А-01-23
1. Стандартные функции. Находятся в модуле builtins, который становится доступным без импорта при запуске среды IDLE.
1.1. Функция round – округление числа с заданной точностью.
help(round)
Ответ программы:
Help on built-in function round in module builtins:
round(number, ndigits=None)
Round a number to a given precision in decimal digits.
The return value is an integer if ndigits is omitted or None. Otherwise
the return value has the same type as the number. ndigits may be negative.
print(round(123.456,1))
print(round(123.456,0))
print('\n')
print(type(round(123.456,1)))
print(type(round(123.456,0)))
print('\n')
print(round(123.456))
print(type(round(123.456)))
print('\n')
Ответ программы:
123.5
123.0
<class 'float'>
<class 'float'>
123
<class 'int'>
1.2. Функция range – создание последовательности целых чисел с заданным шагом или, по умолчанию, с шагом 1.
Аргументами функции являются границы диапазона значений и шаг. При этом правая граница в создаваемую последовательность включена не будет (так же, как это было в «срезах» индексов объектов-последовательностей).
Аргументами функции являются границы диапазона значений и шаг. При этом правая граница в создаваемую последовательность включена не будет (так же, как это было в «срезах» индексов объектов-последовательностей).
Чтобы увидеть получившуюся последовательность чисел, его надо преобразовать, например, в список.
gg=range(76,123,9)
print(list(gg),'\n')
print(list(range(23)))
Ответ программы:
[76, 85, 94, 103, 112, 121]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
Если написать например range(23), то будет последовательность от нуля до 23 (не включительно) с шагом 1.
1.3. Функция zip – создание общего объекта, элементами которого являются кортежи, составленные из элементов двух или более объектов-последовательностей (zip – застежка-«молния»).
Длина результирующего объекта равна длине самого короткого объекта из двух аргументов функции.
qq=['Terekhov','Zhalnin', 'Petrov']
ff=zip(qq,gg)
print(tuple(ff))
Ответ программы:
(('Terekhov', 76), ('Zhalnin', 85), ('Petrov', 94))
В получившемся кортеже 3 элемента-кортежа. То есть столько, сколько в наименьшем списке среди двух (qq, gg).
К объекту ff обращаться с указанием индекса.
print(ff[1][0])
Ответ программы:
Traceback (most recent call last):
File "/home/user/Desktop/VUZ/3CURSE/POAS_labs/python-labs/TEMA4/task1.py", line 20, in <module>
print(ff[1][0])
~~^^^
TypeError: 'zip' object is not subscriptable
1.4. Функция eval – вычисление значения выражения, корректно записанного на языке Python и представленного в виде символьной строки.
fff=float(input('коэффициент усиления='))
dan=eval('5*fff-156')
print(dan)
Ответ программы:
коэффициент усиления=10
-106.0
1.5. Функция exec – чтение и выполнение объекта-аргумента функции.
exec(input('введите инструкции:'))
print(dir())
Ответ программы:
введите инструкции:perem=-123.456;gg=round(abs(perem)+98,3)
['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'dan', 'ff', 'fff', 'gg', 'perem', 'qq']
Функции eval() и exec() нужно использовать с осторожностью, так как они затрудняют чтение и понимание программ.
1.6. Функция abs - модуль (абсолютное значение).
print(abs(-7), abs(3.5))
Ответ программы:
7 3.5
1.7. Функции min() и max() - минимальное и максимальное значение.
Что принимают:
-
Любой итерируемый объект: строка (максимум по UNICODE-коду), кортеж, множество, диапазон, словарь (сравниваются ключи), и т.д.
-
Либо несколько позиционных аргументов: max(3, 7, 2).
print(max(1,2,3,4,5))
print(min(1,2,3,4,5))
Ответ программы:
5
1
1.8. Функция pow() - возведение в степень.
print(pow(2,3))
print(pow(2,3,5)) # 2**3 = 8, затем 8 % 5 = 3.
Ответ программы:
8
3
1.9. Функция sum() - сумма элементов итерируемого объекта.
Не работает со строками.
print(sum([1,2,3,4,5]))
print(sum((1,2,3,4,5)))
print(sum({1,2,3,4,5}))
Ответ программы:
15
15
15
1.10. Функция divmod() — (целая часть, остаток).
print(divmod(29, 5))
Ответ программы:
(5, 4)
1.11. Функция len() - длина.
print(len([1,2,3,4,5]), len("привет"))
Ответ программы:
5 6
1.12. Функция map(func, iterable, ...) применяет функцию func к каждому элементу(ам) и возвращает итератор результатов.
vals = [3, -8, 5, 0, 12, -1]
r = list(map(abs, vals))
print(r)
Ответ программы:
[3, 8, 5, 0, 12, 1]