# Тест по модулю 1.  

***Вариант 20***  

## Пункт 1.  

***Какое назначение имеют демонстрационные примеры в системе помощи?***  

Демонстрационные примеры в Python системе помощи служат для:  

1. Показа использования функций и классов
2. Автоматического тестирования кода через doctest
3. Обучения пользователей на реальных примерах
4. Демонстрации работы в разных ситуациях
5. Встроенной справки через help()

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

## Пункт 2.  

***Создайте  объект-список с числовыми четными целыми значениями от -10 до  +26. Напишите инструкцию,  доказывающую, что создан объект именно требуемого типа. Напишите инструкцию отображения списка атрибутов созданного объекта.***  

```python
my_list = list(range(-10, 27))
print(my_list)
print("Тип объекта:", type(my_list))
print("Атрибуты объекта:", dir(my_list))
```

Ответ программы:  
```shell
[-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
Тип объекта: <class 'list'>
Атрибуты объекта: ['__add__', '__class__', '__class_getitem__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
```

## Пункт 3.  

***Напишите инструкцию, позволяющую определить число элементов в созданном списке. Напишите инструкции, заменяющие первое значение в списке на -1000, а последнее - на +1000. Отобразите получившийся объект.***  

```python
my_list = list(range(-10, 27))
print(my_list)
print("Количество элементов в списке:", len(my_list))
my_list[0] = -1000
my_list[len(my_list) - 1] = 1000
print("После замены:", my_list)
```

Ответ программы:  
```shell
[-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
Количество элементов в списке: 37
После замены: [-1000, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 1000]
```

## Пункт 4.  

***Напишите инструкцию, вставляющую в список на 4-ю позицию от начала число 123. Удлините список за счет его повторения ещё два раза. Отобразите получившийся объект. Подсчитайте число элементов в получившемся списке.***  

```python
my_list = list(range(-10, 27))
print(my_list)
my_list[3]=123
my_list=my_list+my_list
my_list=my_list+my_list
print(my_list)
print("Количество элементов в списке:", len(my_list))
```

Ответ программы:  
```shell
[-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
[-10, -9, -8, 123, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, -10, -9, -8, 123, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, -10, -9, -8, 123, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, -10, -9, -8, 123, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]
```

## Пункт 5.  

***Преобразуйте список в кортеж. Создайте два кортежа, содержащих, соответственно первую и вторую половину элементов из исходного кортежа. Отобразите созданные объекты.***  

```python
my_list = list(range(-10, 27))
my_tuple = tuple(my_list)
print(my_tuple)
print("Тип объекта:", type(my_tuple))
first_half = my_tuple[:len(my_tuple)//2]
second_half = my_tuple[len(my_tuple)//2:]
print(first_half)
print(second_half)
```

Ответ программы:  
```shell
(-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
Тип объекта: <class 'tuple'>
(-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7)
(8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
```
