форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
80 строки
5.0 KiB
Markdown
80 строки
5.0 KiB
Markdown
# Общее контрольное задание по теме 3
|
|
|
|
Коломейцев Дмитрий, А-02-23
|
|
|
|
## Решение
|
|
|
|
### 1. Преобразовал восьмеричное значение 45 в целое число.
|
|
```py
|
|
>>> int('45', 8)
|
|
37
|
|
```
|
|
### 2. Создал объект-словарь D и затем преобразовал его в два списка: ключей и значений, а затем – эти два списка преобразовал в один кортеж. Кортеж отличается от списка тем, что он неизменяемый.
|
|
|
|
```py
|
|
>>> D = {"усиление": 23, "запаздывание": 12, "постоянная времени": 78}
|
|
>>> D
|
|
{'усиление': 23, 'запаздывание': 12, 'постоянная времени': 78}
|
|
>>> keys_list = list(D.keys())
|
|
>>> values_list = list(D.values())
|
|
>>> keys_list
|
|
['усиление', 'запаздывание', 'постоянная времени']
|
|
>>> values_list
|
|
[23, 12, 78]
|
|
>>> D1=tuple(keys_list + values_list)
|
|
>>> D1
|
|
('усиление', 'запаздывание', 'постоянная времени', 23, 12, 78)
|
|
```
|
|
|
|
|
|
### 3. Сделал единое выражение, осуществляющее деление числа 1768 на 24.8 с округлением вниз, с определением после этого остатка от деления получившегося значения на 3 и затем возведения результата в степень 2.4.
|
|
|
|
```py
|
|
>>> b = ((1768 // 24.8) % 3) ** 2.4
|
|
>>> b
|
|
5.278031643091577
|
|
```
|
|
### 4. Сделал единое выражение, последовательно осуществляющее следующие операции: двоичное И для чисел 13 и 27, инверсия полученного значения, двоичное исключающее ИЛИ для полученного значения и числа 14, сдвиг полученного значения на два разряда влево.
|
|
```py
|
|
c = ((~(13 & 27)) ^ 14) << 2
|
|
c
|
|
-32
|
|
```
|
|
|
|
### 5. Создал список с 4 одинаковыми элементами 'колебат' и написал оператор проверки наличия комбинации символов 'аткол' в результате конкатенации второго и третьего элементов этого списка.
|
|
```py
|
|
>>> spis = ['колебат'] * 4
|
|
>>> spis
|
|
['колебат', 'колебат', 'колебат', 'колебат']
|
|
>>> 'аткол' in (spis[1] + spis[2])
|
|
True
|
|
```
|
|
### 6. Определил список методов, доступных у ранее созданного словаря D. Поочередно использовал его методы keys и values, определил, что можно получить с применением этих методов.
|
|
```py
|
|
>>> 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']
|
|
>>> D.keys() #получение ключей словаря
|
|
dict_keys(['усиление', 'запаздывание', 'постоянная времени'])
|
|
>>> D.values() #получение значений словаря
|
|
dict_values([23, 12, 78])
|
|
```
|
|
|
|
### 7. Создать объект - символьную строку с текстом данного предложения. Из символьной строки создать список, элементами которого будут отдельные слова из созданной строки. Заменить в списке элемент «-» на «,». Удалить из списка элемент со значением «данного». Отобразить получившийся список.
|
|
Решение:
|
|
```py
|
|
>>> strk = "Создать объект - символьную строку с текстом данного предложения."
|
|
>>> strk1=strk.split() #разбитие строки на слова
|
|
strk1
|
|
['Создать', 'объект', '-', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения.']
|
|
|
|
strk1.index('-')
|
|
2
|
|
|
|
strk1[2] = ','
|
|
strk1
|
|
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения.']
|
|
|
|
strk1.remove('данного')
|
|
strk1
|
|
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'предложения.']
|
|
``` |