# Общее контрольное задание
Зеленкина Ксения, А-02-23
## 1.
Преобразовать восьмеричное значение 45 в целое число.
_Код:_
```py
res = int('45', 8)
print(res)
```
_Вывод:_
```py
37
```

## 2.
Создать объект-словарь D со значениями {"усиление":23, "запаздывание":12, "постоянная времени":78} и затем осуществить его преобразование в два списка: ключей и значений, а затем – эти два списка преобразовать в один кортеж. Чем отличается кортеж от списка?
_Код:_
```py
dir = {"усиление":23, "запаздывание":12, "постоянная времени":78}
key = dir.keys()
val = dir.values()
lk = list(key)
lv = list(val)
kort = tuple(lk + lv)
print(kort)
print(type(kort))
```

_Вывод:_
```py
('усиление', 'запаздывание', 'постоянная времени', 23, 12, 78)
```

__Список:__ Изменяемый (mutable).
	    Может использоваться в качестве ключа в словаре, так как он неизменяемый.
	    Позиции элементов фиксированы.
	    
__Кортеж:__ Неизменяемый (immutable). 
	    Не может использоваться в качестве ключа в словаре, так как он изменяемый.
	    Позиции элементов фиксированы.

## 3.
Напишите и выполните единое выражение, осуществляющее деление числа 1768 на 24.8 с округлением вниз, с определением после этого остатка от деления получившегося значения на 3 и затем возведения результата в степень 2.4.

_Код:_
```py
print(pow(((1768 // 24.8) % 3), 2.4))
```

_Вывод:_
```py
5.278031643091577
```

## 4.
Напишите и выполните единое выражение, последовательно осуществляющее следующие операции: двоичное И для чисел 13 и 27, инверсия полученного значения, двоичное исключающее ИЛИ для полученного значения и числа 14, сдвиг полученного значения на два разряда влево.

_Код:_
```py
print(((~(13 & 27)) ^ 14) << 2)
```

_Вывод:_
```py
-32
```

## 5.
Создать список с 4 одинаковыми элементами 'колебат' и написать оператор проверки наличия комбинации символов 'аткол' в результате конкатенации второго и третьего элементов этого списка.

_Код:_
```py
spis = ['колебат'] * 4
cs = spis[1] + spis[2]
if 'аткол' in cs:
    print("Комбинация 'аткол' найдена в конкатенации.")
else:
    print("Комбинация 'аткол' не найдена в конкатенации.")
```

_Вывод:_
```py
Комбинация 'аткол' найдена в конкатенации.
```

## 6.
Определить список методов, доступных у ранее созданного словаря D. Поочередно использовать его методы keys и values, определить, что можно получить с применением этих методов.

_Код:_
```py
D = {'a': 1, 'b': 2, 'c': 3}
#print(dir(D))
k = D.keys()
print(k)
print(type(k))
print(list(k))

v = D.values()
print(v)
print(type(v))
print(list(v))
```

_Вывод:_
```py
['__class__', '__class_getitem__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__ior__', '__iter__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__ror__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'clear', 'copy', 'fromkeys', 'get', 'items', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']
dict_keys(['a', 'b', 'c'])
<class 'dict_keys'>
['a', 'b', 'c']
dict_values([1, 2, 3])
<class 'dict_values'>
[1, 2, 3]
```

## 7.
Создать объект - символьную строку с текстом данного предложения. Из символьной строки создать список, элементами которого будут отдельные слова из созданной строки.  Заменить в списке элемент «-» на «,».  Удалить из списка элемент со значением  «данного». Отобразить получившийся список.
_Код:_
```py
stroka = 'Создать объект - символьную строку с текстом данного предложения'
l = stroka.split(' ')
print(l)
a = l.index('-')
l[a] = ','
l.remove('данного')
print(l)
```

_Вывод:_
```py
['Создать', 'объект', '-', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
2
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'предложения']
```