форкнуто от main/python-labs
Родитель
218052282c
Сommit
23347fc92c
@ -0,0 +1,86 @@
|
||||
# Общее контрольное задание по теме 3
|
||||
|
||||
Турханов Артем, А-03-23
|
||||
|
||||
## Задание
|
||||
• Преобразовать восьмеричное значение 45 в целое число.
|
||||
• Создать объект-словарь D со значениями {"усиление":23, "запаздывание":12, "постоянная времени":78} и затем осуществить его преобразование в два списка: ключей и значений, а за-тем – эти два списка преобразовать в один кортеж. Чем отличается кортеж от списка?
|
||||
• Напишите и выполните единое выражение, осуществляющее деление числа 1768 на 24.8 с округлением вниз, с определением после этого остатка от деления получившегося значения на 3 и затем возведения результата в степень 2.4.
|
||||
• Напишите и выполните единое выражение, последовательно осуществляющее следующие операции: двоичное И для чисел 13 и 27, инверсия полученного значения, двоичное исключа-ющее ИЛИ для полученного значения и числа 14, сдвиг полученного значения на два разряда влево.
|
||||
• Создать список с 4 одинаковыми элементами 'колебат' и написать оператор проверки наличия комбинации символов 'аткол' в результате конкатенации второго и третьего элементов этого списка.
|
||||
• Определить список методов, доступных у ранее созданного словаря D. Поочередно использо-вать его методы keys и values, определить, что можно получить с применением этих методов.
|
||||
• Создать объект - символьную строку с текстом данного предложения. Из символьной строки создать список, элементами которого будут отдельные слова из созданной строки. Заменить в списке элемент «-» на «,». Удалить из списка элемент со значением «данного». Отобразить получившийся список.
|
||||
|
||||
## Решение
|
||||
Работа в интерпретаторе Python:
|
||||
### Задача 1
|
||||
```py
|
||||
>>> oct45 = oct(45); oct45
|
||||
'0o55'
|
||||
>>> dec45 = int(oct45, 8); dec45
|
||||
45
|
||||
```
|
||||
### Задача 2
|
||||
```py
|
||||
>>> 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
|
||||
```py
|
||||
>>> ((1768 // 24.8)%3)**2.4
|
||||
5.278031643091577
|
||||
```
|
||||
### Задача 4
|
||||
```py
|
||||
>>> ((~(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
|
||||
```py
|
||||
>>> ls1 = list(('колебат '*4).split()); ls1
|
||||
['колебат', 'колебат', 'колебат', 'колебат']
|
||||
'аткол' in (ls1[1] + ls1[2])
|
||||
True
|
||||
```
|
||||
### Задача 6
|
||||
```py
|
||||
>>> 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
|
||||
```py
|
||||
>>> s1 = 'Создать объект - символьную строку с текстом данного предложения'
|
||||
>>> ls2 = list(s1.split())
|
||||
>>> ls2
|
||||
['Создать', 'объект', '-', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
|
||||
>>> ls2[ls2.index('-')] = ','; ls2
|
||||
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
|
||||
>>> ls2.remove('данного'); ls2
|
||||
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'предложения']
|
||||
```
|
Загрузка…
Ссылка в новой задаче