# Общее контрольное задание по теме 2

Турханов Артем, А-03-23

## Задание
•	Создать переменную с именем familia и со значением - символьной строкой – своей фа-милией в латинской транскрипции.

•	Создать переменную со значением, совпадающим с первой буквой из familia.

•	Создать переменную с именем sp_kw со значением – списком всей ключевых слов языка Python.

•	Удалите из списка sp_kw значение 'nonlocal'. Выводом списка в командном окне IDLE убедитесь, что это значение удалено из списка.

•	Создайте кортеж kort_nam с именами: вашим и еще 3-х студентов из вашей группы. Напишите инструкцию, позволяющую убедиться, что тип переменной – это tuple.

•	Напишите инструкцию, добавляющую в kort_nam имена еще двух студентов. 

•	Напишите инструкцию, позволяющую определить, сколько раз в кортеже присутствуют студенты с именем «Дима».

•	Создайте словарь dict_bas, в котором ключами являются русские названия типов перемен-ных, использованных в предыдущих операторах, а значениями – ранее созданные пере-менные, соответствующие этим типам.
## Решение
Работа в интерпретаторе Python: 
```py
>>> familia = 'Turkhanov' # задание 1
>>> c = familia[0] # задание 2
>>> import keyword # задание 3
>>> sp_kw = keyword.kwlist
>>> sp_kw # задание 4
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> sp_kw.remove('nonlocal')
>>> sp_kw
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> kort_nam = ('Артем', 'Илья', 'Дима', 'Даня') # задание 5
>>> type(kort_nam)
<class 'tuple'>
>>> kort_nam = kort_nam + ('Макс', 'Саша') # задание 6
>>> kort_nam
('Артем', 'Илья', 'Дима', 'Даня', 'Макс', 'Саша')
>>> kort_nam.count('Дима') # задание 7
1
>>> dict_bas = {'Строка': familia, 'Список': sp_kw, 'Кортеж': kort_nam} # задание 8
>>> dict_bas
{'Строка': 'Turkhanov', 'Список': ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'], 'Кортеж': ('Артем', 'Илья', 'Дима', 'Даня', 'Макс', 'Саша')}
```
Реализация в тектовом файле:
```py
# Общее контрольное задание по теме 2
# Турханов Артем, А-03-23

import keyword

# Задание 1
familia = 'Turkhanov'

# Задание 2
c = familia[0]

# Задание 3
sp_kw = keyword.kwlist

# Задание 4
print('Список ключевых слов: ', sp_kw)
sp_kw.remove('nonlocal')
print('Список ключевых слов без nonlocal: ', sp_kw)

# Задание 5
kort_nam = ('Артем', 'Илья', 'Дима', 'Даня')
print('Класс (тип) данных созданноого кортежа: ',type(kort_nam))

# Задание 6
print('Исходный кортеж: ', kort_nam)
kort_nam = kort_nam + ('Макс', 'Саша')
print('Измененный кортеж: ', kort_nam)

# Задание 7
print('Количество студентов с именем Дима: ',kort_nam.count('Дима'))

# Задание 8
dict_bas = {'Строка': familia, 'Список': sp_kw, 'Кортеж': kort_nam}
print('Словарь: ', dict_bas)

```

Результат исполнения программы, записанной в тектосвый файл: 
```py
== RESTART: D:/!!!Download/Documents/учёба МЭИ/5 СЕМЕСТР/GIT/python-labs/TEMA2/Pr2.py ==
Список ключевых слов:  ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
Список ключевых слов без nonlocal:  ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
Класс (тип) данных созданноого кортежа:  <class 'tuple'>
Исходный кортеж:  ('Артем', 'Илья', 'Дима', 'Даня')
Измененный кортеж:  ('Артем', 'Илья', 'Дима', 'Даня', 'Макс', 'Саша')
Количество студентов с именем Дима:  1
Словарь:  {'Строка': 'Turkhanov', 'Список': ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'], 'Кортеж': ('Артем', 'Илья', 'Дима', 'Даня', 'Макс', 'Саша')}
```