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

Туровец Евгений, А-02-23

## Задание

Реализовать, записать в текстовый файл и проанализировать результаты последовательности инструкций, выполняющих следующие действия:
    • Преобразовать восьмеричное значение 45 в целое число.
    • Создать объект-словарь D со значениями {"усиление":23, "запаздывание":12, "постоянная времени":78} и затем осуществить его преобразование в два списка: ключей и значений, а затем – эти два списка преобразовать в один кортеж. Чем отличается кортеж от списка?
    • Напишите и выполните единое выражение, осуществляющее деление числа 1768 на 24.8 с округлением вниз, с определением после этого остатка от деления получившегося значения на 3 и затем возведения результата в степень 2.4.
    • Напишите и выполните единое выражение, последовательно осуществляющее следующие операции: двоичное И для чисел 13 и 27, инверсия полученного значения, двоичное исключающее ИЛИ для полученного значения и числа 14, сдвиг полученного значения на два разряда влево.
    • Создать список с 4 одинаковыми элементами 'колебат' и написать оператор проверки наличия комбинации символов 'аткол' в результате конкатенации второго и третьего элементов этого списка.
    • Определить список методов, доступных у ранее созданного словаря D. Поочередно использовать его методы keys и values, определить, что можно получить с применением этих методов.
    • Создать объект - символьную строку с текстом данного предложения. Из символьной строки создать список, элементами которого будут отдельные слова из созданной строки.  Заменить в списке элемент «-» на «,».  Удалить из списка элемент со значением  «данного». Отобразить получившийся список.

## Решение

```py
>>>a = int("45", 8)
>>>a
37
>>>D={"усиление":23, "запаздывание":12, "постоянная времени":78}
>>>spis1=list(D)
>>>spis1
['усиление', 'запаздывание', 'постоянная времени']
>>>spis2=list(D.values())
>>>spis2
[23, 12, 78]
>>>kor=tuple(spis1)+tuple(spis2) #Список отличается от кортежа тем, что список изменяем, а кортеж нет.
>>>kor
('усиление', 'запаздывание', 'постоянная времени', 23, 12, 78)
>>>((1768//24.8)%3)**2.4
5.278031643091577
>>>((~(13&27))^14)<<2
-32
>>>spis3=["колебат", "колебат", "колебат",  "колебат" ]
>>>'аткол' in spis3[1] + spis3[2]
True
>>>dir(D)
['__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']
>>>help(D.keys)
Help on built-in function keys:

keys() method of builtins.dict instance
    Return a set-like object providing a view on the dict's keys.

>>>help(D.values)
Help on built-in function values:

values() method of builtins.dict instance
    Return an object providing a view on the dict's values.

>>>D.keys() #Этот метод отображает ключи словаря
dict_keys(['усиление', 'запаздывание', 'постоянная времени'])
>>>D.values() #Этот метод отображает знаечния словаря
dict_values([23, 12, 78])
>>>S="Создать объект - символьную строку с текстом данного предложения"
>>>L=list(S.split())
>>>L
['Создать', 'объект', '-', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
>>>L[L.index("-")] = ","
>>>L
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
>>>L.remove("данного")
>>>L
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'предложения']
```