Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

5.8 KiB

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

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

Задание

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

Решение

Работа в интерпретаторе Python:

Задача 1

>>> oct45 = oct(45); oct45
'0o55'
>>> dec45 = int(oct45, 8); dec45
45

Задача 2

>>> D = {"усиление":23, "запаздывание":12, "постоянная времени":78}
>>> dict_keys = D.keys(); dict_keys
dict_keys(['усиление', 'запаздывание', 'постоянная времени'])
type(dict_keys )
<class 'dict_keys'>
>>> dict_values = D.values(); dict_values
dict_values([23, 12, 78])
>>> T = tuple(dict_keys) + tuple(dict_values); T
('усиление', 'запаздывание', 'постоянная времени', 23, 12, 78)

Кортеж от списка отличается тем, что кортеж - это неизменяемый объект.

Задача 3

>>> ((1768 // 24.8)%3)**2.4
5.278031643091577

Задача 4

>>> ((~(13&27))^14)<<2
-32

13 = 00001101, а 27 = 00011011. 13&27 = 00001001. ~ (13&27) = 11110110. 14 = 00001110. (~ (13&27))^14 = 11111000. ((~(13&27))^14) << 2 = 11100000.

Так как это в доп коде, то ~ (11100000 - 1) = 00100000. Что соответствует десятичному числу 32. Значит 11100000 - это двоичная запись десятичного числа -32

Задача 5

>>> ls1 = list(('колебат '*4).split()); ls1
['колебат', 'колебат', 'колебат', 'колебат']
'аткол' in (ls1[1] + ls1[2])
True

Задача 6

>>> 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.

>>> D.keys()
dict_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.values()
dict_values([23, 12, 78])

Используя методы keys и values, можно получить информацию о том, какие ключи (keys) и значения (values) имеются в словаре, к которму применены эти методы. В нашем случае словарь D имеет ключи: dict_keys(['усиление', 'запаздывание', 'постоянная времени']), и значения: dict_values([23, 12, 78]).

Задача 7

>>> s1 = 'Создать объект - символьную строку с текстом данного предложения'
>>> ls2 = list(s1.split())
>>> ls2
['Создать', 'объект', '-', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
>>> ls2[ls2.index('-')] = ','; ls2
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
>>> ls2.remove('данного'); ls2
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'предложения']