форкнуто от main/python-labs
Родитель
565ce667de
Сommit
8c7f86f7a4
@ -0,0 +1,242 @@
|
||||
# Отчет по теме 4
|
||||
|
||||
***Цель темы: получение навыков использования встроенных функций языка Python.***
|
||||
|
||||
Терехов Фёдор Валерьевич, А-01-23
|
||||
|
||||
## 1. Стандартные функции. Находятся в модуле builtins, который становится доступным без импорта при запуске среды IDLE.
|
||||
|
||||
### 1.1. Функция round – округление числа с заданной точностью.
|
||||
|
||||
```python
|
||||
help(round)
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
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.
|
||||
```
|
||||
|
||||
```python
|
||||
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')
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
```shell
|
||||
123.5
|
||||
123.0
|
||||
|
||||
|
||||
<class 'float'>
|
||||
<class 'float'>
|
||||
|
||||
|
||||
123
|
||||
<class 'int'>
|
||||
```
|
||||
|
||||
### 1.2. Функция range – создание последовательности целых чисел с заданным шагом или, по умолчанию, с шагом 1.
|
||||
|
||||
*Аргументами функции являются границы диапазона значений и шаг. При этом правая граница в создаваемую последовательность включена не будет (так же, как это было в «срезах» индексов объектов-последовательностей).*
|
||||
|
||||
*Аргументами функции являются границы диапазона значений и шаг. При этом правая граница в создаваемую последовательность включена не будет (так же, как это было в «срезах» индексов объектов-последовательностей).*
|
||||
|
||||
*Чтобы увидеть получившуюся последовательность чисел, его надо преобразовать, например, в список.*
|
||||
|
||||
```python
|
||||
gg=range(76,123,9)
|
||||
print(list(gg),'\n')
|
||||
print(list(range(23)))
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
[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 – застежка-«молния»).
|
||||
|
||||
*Длина результирующего объекта равна длине самого короткого объекта из двух аргументов функции.*
|
||||
|
||||
```python
|
||||
qq=['Terekhov','Zhalnin', 'Petrov']
|
||||
ff=zip(qq,gg)
|
||||
print(tuple(ff))
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
(('Terekhov', 76), ('Zhalnin', 85), ('Petrov', 94))
|
||||
```
|
||||
|
||||
В получившемся кортеже 3 элемента-кортежа. То есть столько, сколько в наименьшем списке среди двух (qq, gg).
|
||||
|
||||
**К объекту ff обращаться с указанием индекса.**
|
||||
|
||||
```python
|
||||
print(ff[1][0])
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
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 и представленного в виде символьной строки.
|
||||
|
||||
```python
|
||||
fff=float(input('коэффициент усиления='))
|
||||
dan=eval('5*fff-156')
|
||||
print(dan)
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
коэффициент усиления=10
|
||||
-106.0
|
||||
```
|
||||
|
||||
### 1.5. Функция exec – чтение и выполнение объекта-аргумента функции.
|
||||
|
||||
```python
|
||||
exec(input('введите инструкции:'))
|
||||
print(dir())
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
введите инструкции: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 - модуль (абсолютное значение).
|
||||
|
||||
```python
|
||||
print(abs(-7), abs(3.5))
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
7 3.5
|
||||
```
|
||||
|
||||
### 1.7. Функции min() и max() - минимальное и максимальное значение.
|
||||
|
||||
Что принимают:
|
||||
|
||||
* Любой итерируемый объект: строка (максимум по UNICODE-коду), кортеж, множество, диапазон, словарь (сравниваются ключи), и т.д.
|
||||
|
||||
* Либо несколько позиционных аргументов: max(3, 7, 2).
|
||||
|
||||
```python
|
||||
print(max(1,2,3,4,5))
|
||||
print(min(1,2,3,4,5))
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
5
|
||||
1
|
||||
```
|
||||
|
||||
### 1.8. Функция pow() - возведение в степень.
|
||||
|
||||
```python
|
||||
print(pow(2,3))
|
||||
print(pow(2,3,5)) # 2**3 = 8, затем 8 % 5 = 3.
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
8
|
||||
3
|
||||
```
|
||||
|
||||
### 1.9. Функция sum() - сумма элементов итерируемого объекта.
|
||||
|
||||
*Не работает со строками.*
|
||||
|
||||
```python
|
||||
print(sum([1,2,3,4,5]))
|
||||
print(sum((1,2,3,4,5)))
|
||||
print(sum({1,2,3,4,5}))
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
15
|
||||
15
|
||||
15
|
||||
```
|
||||
|
||||
### 1.10. Функция divmod() — (целая часть, остаток).
|
||||
|
||||
```python
|
||||
print(divmod(29, 5))
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
(5, 4)
|
||||
```
|
||||
|
||||
### 1.11. Функция len() - длина.
|
||||
|
||||
```python
|
||||
print(len([1,2,3,4,5]), len("привет"))
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
5 6
|
||||
```
|
||||
|
||||
### 1.12. Функция map(func, iterable, ...) применяет функцию func к каждому элементу(ам) и возвращает итератор результатов.
|
||||
|
||||
```python
|
||||
vals = [3, -8, 5, 0, 12, -1]
|
||||
r = list(map(abs, vals))
|
||||
print(r)
|
||||
```
|
||||
|
||||
Ответ программы:
|
||||
|
||||
```shell
|
||||
[3, 8, 5, 0, 12, 1]
|
||||
```
|
||||
@ -0,0 +1,55 @@
|
||||
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')
|
||||
|
||||
gg=range(76,123,9)
|
||||
print(list(gg),'\n')
|
||||
print(list(range(23)))
|
||||
print('\n')
|
||||
|
||||
|
||||
qq=['Terekhov','Zhalnin', 'Petrov']
|
||||
ff=zip(qq,gg)
|
||||
print(tuple(ff))
|
||||
print('\n')
|
||||
|
||||
fff=10
|
||||
dan=eval('5*fff-156')
|
||||
print(dan)
|
||||
print('\n')
|
||||
|
||||
print(dir())
|
||||
print('\n')
|
||||
|
||||
print(abs(-7), abs(3.5))
|
||||
print('\n')
|
||||
|
||||
print(max(1,2,3,4,5))
|
||||
print(min(1,2,3,4,5))
|
||||
print('\n')
|
||||
|
||||
print(pow(2,3))
|
||||
print(pow(2,3,5)) # 2**3 = 8, затем 8 % 5 = 3.
|
||||
print('\n')
|
||||
|
||||
print(sum([1,2,3,4,5]))
|
||||
print(sum((1,2,3,4,5)))
|
||||
print(sum({1,2,3,4,5}))
|
||||
print('\n')
|
||||
|
||||
print(divmod(29, 5))
|
||||
print('\n')
|
||||
|
||||
print(len([1,2,3,4,5]), len("привет"))
|
||||
print('\n')
|
||||
|
||||
|
||||
vals = [3, -8, 5, 0, 12, -1]
|
||||
r = list(map(abs, vals))
|
||||
print(r)
|
||||
Загрузка…
Ссылка в новой задаче