# Индивидуальное контрольное задание по теме 2

Зеленкина Катерина, А-02-23
Вариант 8

## Задание

1. При каких условиях можно создавать программы для среды Python с помощью других текстовых редакторов? Назовите примеры таких редакторов.
2. Создайте объект, содержащий текст задания данного пункта. Создайте новый объект, в который включите из первого объекта только слова, находящиеся на четных позициях. Напишите инструкции определения класса созданного объекта и списка его атрибутов.
3. Создайте кортеж, содержащий слова из итогового созданного объекта в п.2. Напишите инструкции подсчета числа слов и отобразите с использованием формата результат на экране по шаблону: "в кортеже ХХ элементов".
4. Напишите инструкции создания словаря, в котором ключами будут порядковые номера, а значениями - слова из кортежа, созданного в п.3.
5. Преобразуйте значения из словаря во множество. Подсчитайте и выведите на экран число элементов этого множества. 

## Решение
#### Пункт 1.
1. Программы для среды Python можно создавать в любых текстовых редакторах при условии сохранения файла с расширением .py. Например: Блокнот, Notepad++ и др.

```py
#Пункт 2.

>>> text = "Создайте объект, содержащий текст задания данного пункта. Создайте новый объект, в который включите из первого объекта только слова, находящиеся на четных позициях. Напишите инструкции определения класса созданного объекта и списка его атрибутов."

>> slova = text.split(); slova
['Создайте', 'объект,', 'содержащий', 'текст', 'задания', 'данного', 'пункта.', 'Создайте', 'новый', 'объект,', 'в', 'который', 'включите', 'из', 'первого', 'объекта', 'только', 'слова,', 'находящиеся', 'на', 'четных', 'позициях.', 'Напишите', 'инструкции', 'определения', 'класса', 'созданного', 'объекта', 'и', 'списка', 'его', 'атрибутов.']
>>> p = slova[1::2]
['объект,', 'текст', 'данного', 'Создайте', 'объект,', 'который', 'из', 'объекта', 'слова,', 'на', 'позициях.', 'инструкции', 'класса', 'объекта', 'списка', 'атрибутов.']
>>> text1 = ' '.join(p); text1
'объект, текст данного Создайте объект, который из объекта слова, на позициях. инструкции класса объекта списка атрибутов.'

>>> type(text1)
<class 'str'>
>>> dir(text1)
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'removeprefix', 'removesuffix', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']


#Пункт 3.
>>> cort=tuple(slova); cort
('Создайте', 'объект,', 'содержащий', 'текст', 'задания', 'данного', 'пункта.', 'Создайте', 'новый', 'объект,', 'в', 'который', 'включите', 'из', 'первого', 'объекта', 'только', 'слова,', 'находящиеся', 'на', 'четных', 'позициях.', 'Напишите', 'инструкции', 'определения', 'класса', 'созданного', 'объекта', 'и', 'списка', 'его', 'атрибутов.')
>> len(cort)
32
>>> "в кортеже {} элемента".format(len(cort))
'в кортеже 32 элемента'

# Пункт 4. 
slovar = dict(zip(range(1, len(cort)+1), cort)); slovar
{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: 'класса', 27: 'созданного', 28: 'объекта', 29: 'и', 30: 'списка', 31: 'его', 32: 'атрибутов.'}

# Пункт 5.
>>> mnoz = set(slovar.values()); mnoz
{'находящиеся', 'позициях.', 'на', 'и', 'его', 'текст', 'созданного', 'слова,', 'инструкции', 'объекта', 'в', 'определения', 'задания', 'списка', 'из', 'первого', 'пункта.', 'содержащий', 'включите', 'данного', 'новый', 'который', 'Создайте', 'только', 'четных', 'атрибутов.', 'Напишите', 'объект,', 'класса'}
>>> len(mnoz)
29
```