форкнуто от main/python-labs
Родитель
e873575954
Сommit
4a611b9e3e
@ -0,0 +1,115 @@
|
||||
# Общее контрольное задание по теме 3
|
||||
|
||||
## Задание
|
||||
|
||||
Преобразовать восьмеричное значение 45 в целое число.
|
||||
|
||||
## Решение
|
||||
|
||||
```py
|
||||
v = '45'
|
||||
c = int(v, 8)
|
||||
c
|
||||
37
|
||||
```
|
||||
|
||||
## Задание
|
||||
|
||||
Создать объект-словарь D со значениями {"усиление":23, "запаздывание":12, "постоянная времени":78} и затем осуществить его преобразование в два списка: ключей и значений, а затем – эти два списка преобразовать в один кортеж. Чем отличается кортеж от списка?
|
||||
|
||||
## Решение
|
||||
|
||||
```py
|
||||
dic = {"усиление":23, "запаздывание":12, "постоянная времени":78}
|
||||
k = list(dic.keys())
|
||||
k
|
||||
['усиление', 'запаздывание', 'постоянная времени']
|
||||
zn = list(dic.values())
|
||||
zn
|
||||
[23, 12, 78]
|
||||
kort1 = tuple(k)
|
||||
kort2 = tuple(zn)
|
||||
new = kort1 + kort2
|
||||
new
|
||||
('усиление', 'запаздывание', 'постоянная времени', 23, 12, 78)
|
||||
new2 = (k, zn)
|
||||
new2
|
||||
(['усиление', 'запаздывание', 'постоянная времени'], [23, 12, 78])
|
||||
```
|
||||
|
||||
Отличие кортежей от списков в том, что списки изменяются, а кортежи нет. Когда созаем список используем квадратные скобки, когда кортеж - круглые.
|
||||
|
||||
## Задание
|
||||
|
||||
Напишите и выполните единое выражение, осуществляющее деление числа 1768 на 24.8 с округлением вниз, с определением после этого остатка от деления получившегося значения на 3 и затем возведения результата в степень 2.4.
|
||||
|
||||
## Решение
|
||||
|
||||
```py
|
||||
((1768 // 24.8) % 3)**2.4
|
||||
5.278031643091577
|
||||
```
|
||||
|
||||
## Задание
|
||||
|
||||
Напишите и выполните единое выражение, последовательно осуществляющее следующие операции: двоичное И для чисел 13 и 27, инверсия полученного значения, двоичное исключающее ИЛИ для полученного значения и числа 14, сдвиг полученного значения на два разряда влево.
|
||||
|
||||
## Решение
|
||||
|
||||
```py
|
||||
((~(13 & 17)) ^ 14) << 2
|
||||
-64
|
||||
bin(((~(13 & 17)) ^ 14) << 2)
|
||||
'-0b1000000'
|
||||
```
|
||||
|
||||
## Задание
|
||||
|
||||
Создать список с 4 одинаковыми элементами 'колебат' и написать оператор проверки наличия комбинации символов 'аткол' в результате конкатенации второго и третьего элементов этого списка.
|
||||
|
||||
## Решение
|
||||
|
||||
```py
|
||||
spis = ['колебат', 'колебат', 'колебат', 'колебат']
|
||||
spis[1] += spis[2]
|
||||
spis
|
||||
['колебат', 'колебатколебат', 'колебат', 'колебат']
|
||||
'аткол' in spis
|
||||
False
|
||||
'аткол' in spis[1]
|
||||
True
|
||||
```
|
||||
|
||||
## Задание
|
||||
|
||||
Определить список методов, доступных у ранее созданного словаря D. Поочередно использовать его методы keys и values, определить, что можно получить с применением этих методов.
|
||||
|
||||
## Решение
|
||||
|
||||
```py
|
||||
dir(dic)
|
||||
['__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']
|
||||
dic.keys()
|
||||
dict_keys(['усиление', 'запаздывание', 'постоянная времени'])
|
||||
dic.values()
|
||||
dict_values([23, 12, 78])
|
||||
```
|
||||
|
||||
## Задание
|
||||
|
||||
Создать объект - символьную строку с текстом данного предложения. Из символьной строки создать список, элементами которого будут отдельные слова из созданной строки. Заменить в списке элемент «-» на «,». Удалить из списка элемент со значением «данного». Отобразить получившийся список.
|
||||
|
||||
## Решение
|
||||
|
||||
```py
|
||||
stroka = 'Создать объект - символьную строку с текстом данного предложения'
|
||||
spisss = stroka.split(' ')
|
||||
spisss
|
||||
['Создать', 'объект', '-', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
|
||||
spisss[spisss.index('-')] = ','
|
||||
spisss
|
||||
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения']
|
||||
spisss.remove('данного')
|
||||
spisss
|
||||
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'предложения']
|
||||
```
|
||||
Загрузка…
Ссылка в новой задаче