Сравнить коммиты

...

13 Коммитов
main ... main

Автор SHA1 Сообщение Дата
Пользователь № 6 аудитории Ж-113 61be612cd3 test
2 недель назад
Вадим Румянцев 7e1baafd6d final Merge branch 'main' of http://uit.mpei.ru/git/RumyantsevVA/python-labs
2 недель назад
Вадим Румянцев cc44283119 final
2 недель назад
Пользователь № 16 аудитории Ж-113 7766c78390 first
4 недель назад
Вадим Румянцев 38bd7031b5 Final
2 месяцев назад
Вадим Румянцев a2efe3a269 first commit
2 месяцев назад
Вадим Румянцев c73c6550b7 final final
2 месяцев назад
Вадим Румянцев 1e40348ea1 final 4.0
2 месяцев назад
Вадим Румянцев 4bd20662af final 3.0
2 месяцев назад
Вадим Румянцев efa5b47bdd final 2.0
2 месяцев назад
Вадим Румянцев a49799273f final
2 месяцев назад
Вадим Румянцев 2f6d6767b8 final commit
2 месяцев назад
Пользователь № 7 аудитории Ж-111 53da94f0b7 first commit
2 месяцев назад

@ -0,0 +1,8 @@
#Программа по Теме 1 <Румянцев Вадим Алексеевич>
print('Hello')
h=input('Your name=')
import os
os.chdir ('D:\\Уник\\5 семестр\\Программное обеспечение автоматизированных систем\\python-labs\\TEMA1\\')
os.getcwd()

@ -0,0 +1,54 @@
# Отчет по теме 1
Румянцев Вадим, А-03-23
## 1 Изучение среды IDLE
## 1.1 Настройка текущего каталога
```py
import os
os.chdir ('D:\\Уник\\5 семестр\\Программное обеспечение автоматизированных систем\\python-labs\\TEMA1\\')
os.getcwd()
'D:\\Уник\\5 семестр\\Программное обеспечение автоматизированных систем\\python-labs\\TEMA1'
```
Нажал *Файл / Открыть*, диалог оказался сразу нацелен на установленную папку:
![Скриншот диалога открытия файла](figure0.png)
##1.2 импорт программ через командное окно
```py
#Программа по Теме 1 <Румянцев Вадим Алексеевич>
print('Hello')
h=input('Your name=')
import os
os.chdir ('D:\\Уник\\5 семестр\\Программное обеспечение автоматизированных систем\\python-labs\\TEMA1\\')
os.getcwd()
```
```py
import Pr0
Hello
Your name=Vadim
```
## 1.3 Запуск программы "prb1.py"
```py
import prb1
Как Вас зовут? Вадим
Привет, Вадим
```
## 1.4 Открытие и объяснение файла "Pr0.cpython-313.pyc"
##у
## ц”ѕh@ г  уr • \ " S 5 \" S5 rSSKr\R " S5 \R
## " 5 g)ЪHelloz
##Your name=й NuЏ D:\РЈРЅРёРє\5 семестр\Программное обеспечение автоматизированных систем\python-labs\TEMA1\)ЪprintЪinputЪosЪchdirЪgetcwd© у ф• D:\РЈРЅРёРє/5 семестр/Программное обеспечение автоматизированных систем/python-labs/TEMA1\Pr0.pyЪ<module>r  s7 рс Ђg„Щ УЂЫ Ш р bф cШ  r
## Программа кодируется для обработки компьютером
## 1.5 открытие программы "tdemo_chaos"

Двоичные данные
TEMA1/figure0.png

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 92 KiB

@ -0,0 +1,35 @@
Python 3.13.2 (tags/v3.13.2:4f8bb39, Feb 4 2025, 15:23:48) [MSC v.1942 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> print('Hello')
Hello
>>> h=input('Your name=')
Your name=Vadim
>>> import os
>>> os.chdir ('D:\\Уник\\5 семестр\\Программное обеспечение автоматизированных систем\\python-labs\\TEMA1\\')
>>> os.getcwd()
'D:\\Уник\\5 семестр\\Программное обеспечение автоматизированных систем\\python-labs\\TEMA1'
>>>
========================= RESTART: D:/Уник/5 семестр/Программное обеспечение автоматизированных систем/python-labs/TEMA1/Pr0.py ========================
>>>
========================= RESTART: D:/Уник/5 семестр/Программное обеспечение автоматизированных систем/python-labs/TEMA1/Pr0.py ========================
>>>
========================= RESTART: D:/Уник/5 семестр/Программное обеспечение автоматизированных систем/python-labs/TEMA1/Pr0.py ========================
>>> fd
Traceback (most recent call last):
File "<pyshell#5>", line 1, in <module>
fd
NameError: name 'fd' is not defined
>>>
========================= RESTART: D:/Уник/5 семестр/Программное обеспечение автоматизированных систем/python-labs/TEMA1/Pr0.py ========================
Hello
Your name=Vadim
>>> import Pr0
Hello
Your name=Vadim
>>> import prb1
Как Вас зовут? Вадим
Привет, Вадим
>>> import tdemo_chaos
>>>
===================== RESTART: D:\Уник\5 семестр\Программное обеспечение автоматизированных систем\python-labs\TEMA1\tdemo_chaos.py ====================
>>> import tdemo_chaos

@ -0,0 +1,44 @@
# Общее контрольное задание по теме 2
Румянцев Вадим, А-03-23
## Задание
• Создать переменную с именем familia и со значением - символьной строкой – своей фами-лией в латинской транскрипции.
• Создать переменную со значением, совпадающим с первой буквой из familia.
• Создать переменную с именем sp_kw со значением – списком всей ключевых слов языка Python.
• Удалите из списка sp_kw значение 'nonlocal'. Выводом списка в командном окне IDLE убедитесь, что это значение удалено из списка.
• Создайте кортеж kort_nam с именами: вашим и еще 3-х студентов из вашей группы. Напишите инструкцию, позволяющую убедиться, что тип переменной – это tuple.
• Напишите инструкцию, добавляющую в kort_nam имена еще двух студентов.
• Напишите инструкцию, позволяющую определить, сколько раз в кортеже присутствуют студенты с именем «Дима».
• Создайте словарь dict_bas, в котором ключами являются русские названия типов перемен-ных, использованных в предыдущих операторах, а значениями – ранее созданные пере-менные, соответствующие этим типам.
## Решение
familia = 'Rumyamtsev'
first_symbol = familia[0]
first_symbol
'R'
import keyword
sp_kw = keyword.kwlist
sp_kw
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
sp_kw.remove('nonlocal')
sp_kw
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
kort_nam = ('Vadim', 'Dima', 'Ilya', 'Egor')
if type(kort_nam) == tuple:
print("tuple")
else:
print("not tuple")
tuple
kort_nam = kort_nam + ('Nikita', 'Alexey')
kort_nam
('Vadim', 'Dima', 'Ilya', 'Egor', 'Nikita', 'Alexey')
kort_nam.count('Dima')
1
dict_bas = { 'строка': familia, 'символ': first_symbol, 'список': sp_kw, 'кортеж': kort_nam}
dict_bas
{'строка': 'Rumyamtsev', 'символ': 'R', 'список': ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'], 'кортеж': ('Vadim', 'Dima', 'Ilya', 'Egor', 'Nikita', 'Alexey')}

@ -0,0 +1,36 @@
Python 3.13.2 (tags/v3.13.2:4f8bb39, Feb 4 2025, 15:23:48) [MSC v.1942 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
familia = 'Rumyamtsev'
first_symbol = familia[0]
first_symbol
'R'
import keyword
sp_kw = keyword.kwlist
sp_kw
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> sp_kw.pop('nonlocal')
Traceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
sp_kw.pop('nonlocal')
TypeError: 'str' object cannot be interpreted as an integer
>>> sp_kw.remove('nonlocal')
>>> sp_kw
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> kort_nam = ('Vadim', 'Dima', 'Ilya', 'Egor')
>>> if type(kort_nam) == tuple:
... print("tuple")
... else:
... print("not tuple")
...
...
tuple
>>> kort_nam = kort_nam + ('Nikita', 'Alexey')
>>> kort_nam
('Vadim', 'Dima', 'Ilya', 'Egor', 'Nikita', 'Alexey')
>>> kort_nam.count('Dima')
1
>>> dict_bas = { 'строка': familia, 'символ': first_symbol, 'список': sp_kw, 'кортеж': kort_nam}
>>> dict_bas
{'строка': 'Rumyamtsev', 'символ': 'R', 'список': ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'], 'кортеж': ('Vadim', 'Dima', 'Ilya', 'Egor', 'Nikita', 'Alexey')}
>>> dict_bas = { 'строка': familia, 'символ': first_symbol, 'список': sp_kw, 'кортеж': kort_nam}
>>> dict_bas = { 'строка': familia, 'символ': first_symbol, 'список': sp_kw, 'кортеж': kort_nam}

Разница между файлами не показана из-за своего большого размера Загрузить разницу

@ -0,0 +1,642 @@
## Отчет по теме 2
Румянцев Вадим, А-03-23
## 2. Базовые типы объектов
## 2.1 Настройка текущего каталога
```py
import os
os.chdir('D:\\Уник\\5 семестр\\Программное обеспечение автоматизированных систем\\python-labs\\TEMA2\\')
os.getcwd()
'D:\\Уник\\5 семестр\\Программное обеспечение автоматизированных систем\\python-labs\\TEMA2'
```
## 2.2 Изучение простых объектов
```py
f1=16; f2=3
f1,f2
(16, 3)
f1;f2
16
3
dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'f1', 'f2', 'os']
dir(f1)
['__abs__', '__add__', '__and__', '__bool__', '__ceil__', '__class__', '__delattr__', '__dir__', '__divmod__', '__doc__', '__eq__', '__float__', '__floor__', '__floordiv__', '__format__', '__ge__', '__getattribute__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__index__', '__init__', '__init_subclass__', '__int__', '__invert__', '__le__', '__lshift__', '__lt__', '__mod__', '__mul__', '__ne__', '__neg__', '__new__', '__or__', '__pos__', '__pow__', '__radd__', '__rand__', '__rdivmod__', '__reduce__', '__reduce_ex__', '__repr__', '__rfloordiv__', '__rlshift__', '__rmod__', '__rmul__', '__ror__', '__round__', '__rpow__', '__dddddddddddddrrshift__', '__rshift__', '__rsub__', '__rtruediv__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__truediv__', '__trunc__', '__xor__', 'as_integer_ratio', 'bit_count', 'bit_length', 'conjugate', 'denominator', 'from_bytes', 'imag', 'is_integer', 'numerator', 'real', 'to_bytes']
type(f2)
<class 'int'>
del f1,f2
dir()
['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'os']
```
## 2.3 Изучение правил объектов в Python
```py
gg1=1.6 #значение в виде вещественного числа
hh1='Строка' #значение в виде символьной строки
73sr=3 #неправильное имя – начинается с цифры - будет диагностика!
SyntaxError: invalid decimal literal
and=7 #недопустимое имя – совпадает с ключевым словом - будет диагностика!
SyntaxError: invalid syntax
```
## 2.4 Вывод списка ключевых слов с помощью инструкций
```py
import keyword
keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
keywords = keyword.kwlist
keywords
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
```
## 2.5.1 Вывод списка встроенных идентификаторов с помощью инструкций
```py
import builtins
dir(builtins)
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BaseExceptionGroup', 'BlockingIOError', 'BrokenPipeError', 'BufferError',
'BytesWarning', 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError', 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning',
'EOFError', 'Ellipsis', 'EncodingWarning', 'EnvironmentError', 'Exception', 'ExceptionGroup', 'False', 'FileExistsError', 'FileNotFoundError',
'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError',
'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'ModuleNotFoundError', 'NameError', 'None', 'NotADirectoryError',
'NotImplemented', 'NotImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionError', 'ProcessLookupError',
'PythonFinalizationError', 'RecursionError', 'ReferenceError', 'ResourceWarning', 'RuntimeError', 'RuntimeWarning', 'StopAsyncIteration', 'StopIteration',
'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'TimeoutError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError',
'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'ValueError', 'Warning', 'WindowsError',
'ZeroDivisionError', '_', '_IncompleteInputError', '__build_class__', '__debug__', '__doc__', '__import__', '__loader__', '__name__', '__package__',
'__spec__', 'abs', 'aiter', 'all', 'anext', 'any', 'ascii', 'bin', 'bool', 'breakpoint', 'bytearray', 'bytes', 'callable', 'chr', 'classmethod',
'compile', 'complex', 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit', 'filter', 'float', 'format',
'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list',
'locals', 'map', 'max', 'memoryview', 'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range', 'repr', 'reversed',
'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars', 'zip']
```
## 2.5.2 Изучение значения функций
```py
help (abs)
Help on built-in function abs in module builtins:
abs(x, /)
Return the absolute value of the argument.
help(len)
Help on built-in function len in module builtins:
len(obj, /)
Return the number of items in a container.
help(max)
Help on built-in function max in module builtins:
max(...)
max(iterable, *[, default=obj, key=func]) -> value
max(arg1, arg2, *args, *[, key=func]) -> value
With a single iterable argument, return its biggest item. The
default keyword-only argument specifies an object to return if
the provided iterable is empty.
With two or more positional arguments, return the largest argument.
help(min)
Help on built-in function min in module builtins:
min(...)
min(iterable, *[, default=obj, key=func]) -> value
min(arg1, arg2, *args, *[, key=func]) -> value
With a single iterable argument, return its smallest item. The
default keyword-only argument specifies an object to return if
the provided iterable is empty.
With two or more positional arguments, return the smallest argument.
help(pow)
Help on built-in function pow in module builtins:
pow(base, exp, mod=None)
Equivalent to base**exp with 2 arguments or base**exp % mod with 3 arguments
Some types, such as ints, are able to use a more efficient algorithm when
invoked using the three argument form.
help(round)
Help on built-in function round in module builtins:
round(number, ndigits=None)
Round a number to a given precision in decimal digits.
The return value is an integer if ndigits is omitted or None. Otherwise
the return value has the same type as the number. ndigits may be negative.
help(sorted)
Help on built-in function sorted in module builtins:
sorted(iterable, /, *, key=None, reverse=False)
Return a new list containing all items from the iterable in ascending order.
A custom key function can be supplied to customize the sort order, and the
reverse flag can be set to request the result in descending order.
help(sum)
Help on built-in function sum in module builtins:
sum(iterable, /, start=0)
Return the sum of a 'start' value (default: 0) plus an iterable of numbers
When the iterable is empty, return the start value.
This function is intended specifically for use with numeric values and may
reject non-numeric types.
help(zip)
Help on class zip in module builtins:
class zip(object)
| zip(*iterables, strict=False)
|
| The zip object yields n-length tuples, where n is the number of iterables
| passed as positional arguments to zip(). The i-th element in every tuple
| comes from the i-th iterable argument to zip(). This continues until the
| shortest argument is exhausted.
|
| If strict is true and one of the arguments is exhausted before the others,
| raise a ValueError.
|
| >>> list(zip('abcdefg', range(3), range(4)))
| [('a', 0, 0), ('b', 1, 1), ('c', 2, 2)]
|
| Methods defined here:
|
| __getattribute__(self, name, /)
| Return getattr(self, name).
|
| __iter__(self, /)
| Implement iter(self).
|
| __next__(self, /)
| Implement next(self).
|
| __reduce__(self, /)
| Return state information for pickling.
|
| __setstate__(self, object, /)
| Set state information for unpickling.
|
| ----------------------------------------------------------------------
| Static methods defined here:
|
| __new__(*args, **kwargs)
| Create and return a new object. See help(type) for accurate signature.
```
## 2.6 Убедимся, что язык чувствителен к регистру
```py
Ggl=45
Ggl;ggl
45
Traceback (most recent call last):
File "<pyshell#44>", line 1, in <module>
Ggl;ggl
NameError: name 'ggl' is not defined. Did you mean: 'Ggl'?
```
## 2.7 Изучение простых базовых типов объектов
## 2.7.1 Логический тип (bool)
```py
bb1=True; bb2=False
bb1;bb2
True
False
type(bb1) #функция, показывающая тип (класс) объекта
<class 'bool'>
```
## 2.7.2 Другие простые типы
```py
ii1=-1234567890
ff1=-8.9876e-12 #экспоненциальная форма записи вещественного числа
dv1=0b1101010 #Это – двоичное число. В объекте какого класса оно сохранено?
type(dv1)
<class 'int'>
vsm1=0o52765 #Это – восьмеричное число
shest1=0x7109af6 #Это – шестнадцатеричное число
cc1=2-3j
a=3.67; b=-0.45
cc2=complex(a,b) #Создается комплексное число
cc2
(3.67-0.45j)
```
## 2.7.3 Строка символов
```py
ss1='Это - строка символов'
ss1
'Это - строка символов'
ss1="Это - строка символов"
ss1
'Это - строка символов'
ss1a="Это - \" строка символов \", \n \t выводимая на двух строках"
ss1a
'Это - " строка символов ", \n \t выводимая на двух строках'
print(ss1a)
Это - " строка символов ",
выводимая на двух строках
ss1b= 'Меня зовут: \n <Румянцев В. А.>'
print(ss1b)
Меня зовут:
<Румянцев В. А.>
mnogo="""Нетрудно заметить , что в результате операции
над числами разных типов получается число,
имеющее более сложный тип из тех, которые участвуют в операции."""
print(mnogo)
Нетрудно заметить , что в результате операции
над числами разных типов получается число,
имеющее более сложный тип из тех, которые участвуют в операции.
ss1[0] #Это – символ «Э»
'Э'
ss1[8] #А это – символ «р»
'р'
ss1[-2] #А это – символ «о» (при знаке «-»(минус) отсчет от конца строки)
'о'
ss1[6:9] #Это часть строки – символы с 6-го индекса по 8-й (9-й не включается!)
'стр'
ss1[13:] #Это часть строки – с 13-го индекса и до конца
'символов'
ss1[:13] #Это часть строки – с начала и до 12-го индекса включительно
'Это - строка '
ss1[5:-8] #Это часть строки – с 5-го индекса и до 8-го от конца
' строка '
ss1[3:17:2] #Часть строки – с 3-го по 16-й индексы с шагом 2
' тоасм'
ss1[17:3:-2]
'омсаот '
ss1[-4:3:-2]
'омсаот '
ss1[4]='=' # Будет диагностика!
Traceback (most recent call last):
File "<pyshell#84>", line 1, in <module>
ss1[4]='=' # Будет диагностика!
TypeError: 'str' object does not support item assignment
ss1=ss1[:4]+'='+ss1[5:]
ss1
'Это = строка символов'
```
## 2.7.4 Создание срезов из переменной ss1b
```py
ss1b[0]
'М'
ss1b[0:20:4]
'М у\nу'
ss1b=ss1b[:10]+':'+'\n <'+ss1b[11:-1]+'>'
ss1b[0:16:4]
'М у '
```
## 2.7.5 Создание объектов разных типов
```py
# 1. Целое число (int)
integer_obj = 42
# 2. Вещественное число (float)
float_obj = 3.14
# 3. Строка (str)
string_obj = "Hello, World!"
# 4. Логический тип (bool)
bool_obj = True
```
## 2.8 Изучение объектов более сложних типов
## 2.8.1 Объект типа "Список"
```py
spis1=[111,'Spisok',5-9j]
spis1
[111, 'Spisok', (5-9j)]
stup=[0,0,1,1,1,1,1,1,1]
stup
[0, 0, 1, 1, 1, 1, 1, 1, 1]
spis=[1,2,3,4,
5,6,7,
8,9,10]
spis
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
spis1[-1]
(5-9j)
stup[-8::2]
[0, 1, 1, 1]
spis1[1]='Список'
spis1
[111, 'Список', (5-9j)]
len(spis1)
3
help(spis1.append)
Help on built-in function append:
append(object, /) method of builtins.list instance
Append object to the end of the list.
spis1.append('New item')
spis1
[111, 'Список', (5-9j), 'New item']
spis1+['New item']
[111, 'Список', (5-9j), 'New item', 'New item']
spis1.pop(1)
'Список'
spis1
[111, (5-9j), 'New item']
spis1.append(ss1b)
spis1
[111, (5-9j), 'New item', 'Меня зовут:\n < \n <Румянцев В. А.>']
help(insert)
Traceback (most recent call last):
File "<pyshell#127>", line 1, in <module>
help(insert)
NameError: name 'insert' is not defined
help(spis1.insert)
Help on built-in function insert:
insert(index, object, /) method of builtins.list instance
Insert object before index.
help(spis1.remove)
Help on built-in function remove:
remove(value, /) method of builtins.list instance
Remove first occurrence of value.
Raises ValueError if the value is not present.
help(spis1.extend)
Help on built-in function extend:
extend(iterable, /) method of builtins.list instance
Extend list by appending elements from the iterable.
help(spis1.clear)
Help on built-in function clear:
clear() method of builtins.list instance
Remove all items from list.
help(spis1.sort)
Help on built-in function sort:
sort(*, key=None, reverse=False) method of builtins.list instance
Sort the list in ascending order and return None.
The sort is in-place (i.e. the list itself is modified) and stable (i.e. the
order of two equal elements is maintained).
If a key function is given, apply it once to each list item and sort them,
ascending or descending, according to their function values.
The reverse flag can be set to sort in descending order.
help(spis1.sort)
Help on built-in function sort:
sort(*, key=None, reverse=False) method of builtins.list instance
Sort the list in ascending order and return None.
The sort is in-place (i.e. the list itself is modified) and stable (i.e. the
order of two equal elements is maintained).
If a key function is given, apply it once to each list item and sort them,
ascending or descending, according to their function values.
The reverse flag can be set to sort in descending order.
help(spis1.reverse)
Help on built-in function reverse:
reverse() method of builtins.list instance
Reverse *IN PLACE*.
help(spis1.copy)
Help on built-in function copy:
copy() method of builtins.list instance
Return a shallow copy of the list.
help(spis1.count)
Help on built-in function count:
count(value, /) method of builtins.list instance
Return number of occurrences of value.
help(spis1.index)
Help on built-in function index:
index(value, start=0, stop=9223372036854775807, /) method of builtins.list instance
Return first index of value.
Raises ValueError if the value is not present.
spis2=[spis1,[4,5,6,7]]
spis2
[[111, (5-9j), 'New item', 'Меня зовут:\n < \n <Румянцев В. А.>'], [4, 5, 6, 7]]
spis2[0][1]
(5-9j)
spis2[0][1]=78
spis2
[[111, 78, 'New item', 'Меня зовут:\n < \n <Румянцев В. А.>'], [4, 5, 6, 7]]
spis1
[111, 78, 'New item', 'Меня зовут:\n < \n <Румянцев В. А.>']
# Элементы списка spis1 отличаются от изначально заданных т.к. список spis2 состоит из списка spis1 и списка [4, 5, 6, 7].
# При изменении списка spis2, а именно списка spis1, меняется изначальное значение элемента списка spis2 - spis1.
myspis=[52, 'shjdfbshjidf', True, spis1]
myspis
[52, 'shjdfbshjidf', True, [111, 78, 'New item', 'Меня зовут:\n < \n <Румянцев В. А.>']]
```
## 2.8.2 Объект-кортеж
```py
kort1=(222,'Kortezh',77+8j)
kort1
(222, 'Kortezh', (77+8j))
kort1= kort1+(1,2)
kort1
(222, 'Kortezh', (77+8j), 1, 2)
kort1= kort1+(ss1b,)
kort1
(222, 'Kortezh', (77+8j), 1, 2, 'Меня зовут:\n < \n <Румянцев В. А.>')
kort1.index(2) # Будет получено значение 3
4
#Получено 4 т.к. ss1b был изменен
kort1.count(222) #Будет получено значение 1
1
kort1[2]=90
Traceback (most recent call last):
File "<pyshell#159>", line 1, in <module>
kort1[2]=90
TypeError: 'tuple' object does not support item assignment
```
## 2.8.2.1 Создание своего кортежа
```py
mykort=(222, 'rtgeh', myspis, kort1)
mykort
(222, 'rtgeh', [52, 'shjdfbshjidf', True, [111, 78, 'New item', 'Меня зовут:\n < \n <Румянцев В. А.>']], (222, 'Kortezh', (77+8j),
1, 2, 'Меня зовут:\n < \n <Румянцев В. А.>'))
```
## 2.8.3 создание объекта-словаря
```py
dic1={'Saratov':145, 'Orel':56, 'Vologda':45}
dic1
{'Saratov': 145, 'Orel': 56, 'Vologda': 45}
dic1['Orel']
56
dic1['Pskov']=78
dic1
{'Saratov': 145, 'Orel': 56, 'Vologda': 45, 'Pskov': 78}
sorted(dic1.keys())
['Orel', 'Pskov', 'Saratov', 'Vologda']
sorted(dic1.values())
[45, 56, 78, 145]
dic2={1:'mean',2:'standart deviation',3:'correlation'}
dic2
{1: 'mean', 2: 'standart deviation', 3: 'correlation'}
dic3={'statistics':dic2,'POAS':['base','elementary','programming']}
dic3
{'statistics': {1: 'mean', 2: 'standart deviation', 3: 'correlation'}, 'POAS': ['base', 'elementary', 'programming']}
dic3['statistics'][2]
'standart deviation'
dic4=dict([(1,['A','B','C']),(2,[4,5]),('Q','Prim'),('Stroka',ss1b)])
dic4
{1: ['A', 'B', 'C'], 2: [4, 5], 'Q': 'Prim', 'Stroka': 'Меня зовут:\n < \n <Румянцев В. А.>'}
dic5=dict(zip(['A','B','C','Stroka'],[16,-3,9,ss1b]))
dic5
{'A': 16, 'B': -3, 'C': 9, 'Stroka': 'Меня зовут:\n < \n <Румянцев В. А.>'}
my_tuple = ("яблоко", "банан", "апельсин", "виноград", "киви", "манго", "груша")
my_list = [10, 20, 30, 40, 50]
print("Кортеж (7 элементов):", my_tuple)
Кортеж (7 элементов): ('яблоко', 'банан', 'апельсин', 'виноград', 'киви', 'манго', 'груша')
print("Список (5 элементов):", my_list)
Список (5 элементов): [10, 20, 30, 40, 50]
result_dict = dict(zip(my_tuple, my_list))
result_dict
{'яблоко': 10, 'банан': 20, 'апельсин': 30, 'виноград': 40, 'киви': 50}
# Функция Zip объединяет илементы из нескольких последовательностей.
# Когда самая короткая последовательность заканчивается, функция прекращает свою работу
```
## 2.8.4 Создание объекта-множества
```py
mnoz1={'двигатель','датчик','линия связи','датчик','микропроцессор','двигатель'}
mnoz1
{'двигатель', 'микропроцессор', 'датчик', 'линия связи'}
len(mnoz1)
4
'датчик' in mnoz1
True
mnoz1.add('реле')
mnoz1
{'двигатель', 'датчик', 'микропроцессор', 'линия связи', 'реле'}
mnoz1.remove('линия связи')
mnoz1
{'двигатель', 'датчик', 'микропроцессор', 'реле'}
```
## 2.8.4.1 Создание собственного объекта-множества
```py
mymnoz = { 1, 'computer', my_tuple}
mymnoz
{('яблоко', 'банан', 'апельсин', 'виноград', 'киви', 'манго', 'груша'), 1, 'computer'}
mymnoz.add('system')
mymnoz
{('яблоко', 'банан', 'апельсин', 'виноград', 'киви', 'манго', 'груша'), 1, 'system', 'computer'}
mymnoz.remove(my_tuple)
mymnoz
{1, 'system', 'computer'}
```

@ -0,0 +1,632 @@
# Отчет по теме 3
# Румянцев Вадим, А-03-23
## 3 Операции с объектами
## 3.1 Начало подготовки отчета
## 3.2.1 Преобразование простых базовых типов объектов
```py
logiz1=bool(56)
logiz1
True
logiz2=bool(0)
logiz2
False
logiz3=bool("beta")
logiz3
True
logiz4=bool("")
logiz4
False
```
## 3.2.2 Преобразование в целое десятичное число объекта с заданной системой счисления
```py
tt1=int(198.6)
tt1
198
tt2=int("-76")
tt2
-76
tt3=int("B",16)
tt3
11
tt4=int("71",8)
tt4
57
tt5=int("98.76")
Traceback (most recent call last):
File "<pyshell#18>", line 1, in <module>
tt5=int("98.76")
ValueError: invalid literal for int() with base 10: '98.76'
```
# Диагностическое сообщение выдано по причине того, что число записано как строка, которую нельзя представить как число
#Преобразование целых чисел или строк символов в вещественное число
```py
flt1=float(789)
flt1
789.0
flt2=float(-6.78e2)
flt2
-678.0
flt3=float("infinity")
flt3
inf
flt4=float("-inf")
flt4
-inf
```
## 3.2.3 Преобразование десятичных чисел в другие системы счисления
```py
hh=123
dv1=bin(hh)
dv1
'0b1111011'
vos1=oct(hh)
vos1
'0o173'
sch1=hex(hh)
sch1
'0x7b'
hh1=int(dv1,2)
hh1
123
hh2=int(vos1,8)
hh2
123
hh3=int(sch1,16)
hh3
123
```
## 3.3 Изучение преобразований более сложных базовых типов объектов
## 3.3.1 Преобразование в строку символов
```py
strk1=str(23.6)
strk1
'23.6'
strk2=str(logiz3)
strk2
'True'
strk3=str(["A","B","C"])
strk3
"['A', 'B', 'C']"
strk4=str(("A","B","C"))
strk4
"('A', 'B', 'C')"
strk5=str({"A":1,"B":2,"C":9})
strk5
"{'A': 1, 'B': 2, 'C': 9}"
```
## 3.3.2 Преобразование элементов объекта в список
```py
spis1=list("Строка символов")
spis1
['С', 'т', 'р', 'о', 'к', 'а', ' ', 'с', 'и', 'м', 'в', 'о', 'л', 'о', 'в']
spis2=list((124,236,-15,908))
spis2
[124, 236, -15, 908]
spis3=list({"A":1,"B":2,"C":9})
spis3
['A', 'B', 'C']
spis4=list({"A":2,"B":1,"C":9})
spis4
['A', 'B', 'C']
```
## 3.3.3 Преобразование элементов в кортеж
kort7=tuple('Строка символов')
kort7
('С', 'т', 'р', 'о', 'к', 'а', ' ', 'с', 'и', 'м', 'в', 'о', 'л', 'о', 'в')
kort8=tuple(spis2)
kort8
(124, 236, -15, 908)
kort9=tuple({"A":1,"B":2,"C":9})
kort9
('A', 'B', 'C')
```
## 3.3.4 Удаление объектов
```py
del strk5, kort8
strk5
Traceback (most recent call last):
File "<pyshell#74>", line 1, in <module>
strk5
NameError: name 'strk5' is not defined. Did you mean: 'strk1'?
kort8
Traceback (most recent call last):
File "<pyshell#75>", line 1, in <module>
kort8
NameError: name 'kort8' is not defined. Did you mean: 'kort7'?
```
#Создайте строку со своей фамилией и инициалами, преобразуйте её в список, затем список – в кортеж и, наконец, кортеж – в строку.
```py
name1=str('Румянцев В А')
name1
'Румянцев В А'
name2=list(name1)
name2
['Р', 'у', 'м', 'я', 'н', 'ц', 'е', 'в', ' ', 'В', ' ', 'А']
name3=tuple(name2)
name3
('Р', 'у', 'м', 'я', 'н', 'ц', 'е', 'в', ' ', 'В', ' ', 'А')
name4=str(name3)
name4
"('Р', 'у', 'м', 'я', 'н', 'ц', 'е', 'в', ' ', 'В', ' ', 'А')"
```
## 3.4 Арифметические операции
## 3.4.1 Сложение и вычитание
```py
12+7+90
109
5.689e-1-0.456
0.11289999999999994
23.6+54
77.6
14-56.7+89
46.3
```
## 3.4.2 Умножение
```py
-6.7*12
-80.4
```
## 3.4.3 Деление
```py
-234.5/6
-39.083333333333336
a=178/45
type(a)
<class 'float'>
a
3.9555555555555557
```
## 3.4.4 Деление с округлением вниз (//)
```py
b=178//45
b
3
c=-24.6//12.1
c
-3.0
d=5.689e-1 // 2
d
0.0
5.689e-1 // 0.456
1.0
```
## 3.4.5 Получение остатка от деления
```py
148%33
16
12.6%3.8
1.2000000000000002
5.689e-1 % 0.456
0.11289999999999994
```
## 3.4.6 Возведение в степень
```py
14**3
2744
e=2.7**3.6
e
35.719843790663525
5.689e-1 ** 0.456
0.7732080836573664
```
## Операции с участием комплексных чисел
```py
```
## 3.5 Операции с двоичными представлениеми целых чисел
## 3.5.1 Двоичная инверсия
```py
dv1=9
dv1
9
dv2=~dv1
dv2
-10
```
### 3.5.2 Двоичное «И» (&)
```py
bin(7&9)
'0b1'
bin(7&8)
'0b0'
```
## 3.5.3 Двоичное «ИЛИ» (|)
```py
bin(7|9)
'0b1111'
bin(7|8)
'0b1111'
bin(14|5)
'0b1111'
```
## 3.5.4 Двоичное «исключающее ИЛИ»(^)
```py
bin(14^5)
'0b1011'
```
## 3.5.5 Сдвиг двоичного представления на заданное число разрядов влево (<<) или вправо (>>) с дополнением нулями, соответственно справа или слева.
```py
h=14
h1=bin(h)
h1
'0b1110'
g=bin(h<<2)
g
'0b111000'
g1=h>>1
g1
7
g1=bin(h>>1)
g1
'0b111'
g2=bin(h>>2)
g2
'0b11'
h7=1341
h71=bin(h7)
h71
'0b10100111101'
g7=bin(h7<<4)
g7
'0b101001111010000'
g71=bin(h7>>5)
g71
'0b101001'
```
## 3.6 Операции при работе с последовательностями
## 3.6.1 Объединение последовательностей (конкатенация)(+)
```py
'Система '+'регулирования'
'Система регулирования'
['abc','de','fg']+['hi','jkl']
['abc', 'de', 'fg', 'hi', 'jkl']
('abc','de','fg')+('hi','jkl')
('abc', 'de', 'fg', 'hi', 'jkl')
```
## 3.6.2 Повторение (*)
```py
'ля-'*5
'ля-ля-ля-ля-ля-'
['ку','-']*3
['ку', '-', 'ку', '-', 'ку', '-']
('кис','-')*4
('кис', '-', 'кис', '-', 'кис', '-', 'кис', '-')
signal1=[0]*3+[1]*99
signal1
[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
signal2=(0,)*3+(1,)*5+(0,)*7
signal2
(0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0)
```
## 3.6.3 Проверка наличия заданного элемента в последовательности (in)
```py
stroka='Система автоматического управления'
stroka
'Система автоматического управления'
'автомат' in stroka
True
'ку' in ['ку','-']*3
True
'ля-' in ('abc', 'de', 'fg', 'hi', 'jkl')
False
```
## 3.6.4 Подстановка значений в строку с помощью оператора «%»
```py
stroka='Температура = %g %s %g'
stroka
'Температура = %g %s %g'
stroka % (16,' меньше ',25)
'Температура = 16 меньше 25'
stroka='Температура = %(zn1)g %(sravn)s %(zn2)g'
stroka
'Температура = %(zn1)g %(sravn)s %(zn2)g'
stroka % {'zn1':16,'sravn':' меньше ','zn2':25}
'Температура = 16 меньше 25'
```
## 3.7 Оператор присваивания
## 3.7.1 Обычное присваивание значения переменной (=)
```py
zz=-12
```
## 3.7.2 Увеличение значения переменной на заданную величину (+=) или уменьшение (-=)
```py
zz=-12
zz+=5
zz
-7
zz-=3
zz
-10
stroka='Система'
stroka
'Система'
stroka+=' регулирования'
stroka
'Система регулирования'
```
## 3.7.3 Умножение текущего значения переменной на заданную величину (*=) или деление (/=)
```py
zz/=2
zz
-5.0
zz*=5
zz
-25.0
```
## 3.7.4 Операции деления с округлением вниз (//=), получения остатка от деления (%=) и возведения в степень(**=)
```py
zz//=4
zz
-7.0
zz%=2
zz
1.0
zz+=8
zz
9.0
zz**=3
zz
729.0
```
## 3.7.5 Множественное присваивание
```py
w=v=10
w
10
v
10
n1,n2,n3=(11,-3,'all')
n1
11
n2
-3
n3
'all'
```
## 3.8 Логические операции – при создании логических выражений, дающих в результате вычисления значения True или False.
## 3.8.1 Операции сравнение: равенство (==), не равно (!=), меньше (<), больше (>), меньше или равно (<=), больше или равно (>=)
```py
w==v
True
w!=v
False
w<v
False
w>v
False
w<=v
True
w>=v
True
```
## 3.8.2 Проверка наличия заданного элемента в последовательности или во множестве, а также проверка наличия ключа в словаре
```py
mnoz1={'pen','book','pen','iPhone','table','book'}
mnoz1
{'pen', 'table', 'iPhone', 'book'}
'book' in mnoz1
True
'cap' in mnoz1
False
dic1={'Saratov':145, 'Orel':56, 'Vologda':45}
dic1
{'Saratov': 145, 'Orel': 56, 'Vologda': 45}
'Vologda' in dic1
True
'Pskov' in dic1
False
56 in dic1.values()
True
dct1={'Institut':['AVTI','IEE','IBB'],'Depart':['UII','PM','VMSS','MM'],'gruppa': ['A-01-15','A-02-15']}
dct1
{'Institut': ['AVTI', 'IEE', 'IBB'], 'Depart': ['UII', 'PM', 'VMSS', 'MM'], 'gruppa': ['A-01-15', 'A-02-15']}
'UII' in dct1['Depart']
True
dct1['Depart'][1] == 'MM'
False
```
## 3.8.3 Создание больших логических выражений с использованием соединительных слов: логическое «И» (and), логическое «ИЛИ» (or), логическое «НЕ» (not).
```py
a=17
b=-6
(a>=b) and ('book' in mnoz1) and not ('Pskov' in dic1)
True
(a==b) and ('Pskov' in dic1) or not ('cap' in mnoz1)
True
```
## 3.8.4 Проверка ссылок переменных на один и тот же объект (is).
```py
w=v=10
w is v
True
w1=['A','B']
v1=['A','B']
w1
['A', 'B']
v1
['A', 'B']
w1 is v1
False
# В первом случае значения w и v ссылаются на один и тот же объект "10"
# Во втором случае значения w1 и v1 заданы отдельно для каждого значения
```
## 3.9 Операции с объектами, выполняемые с помощью методов.
```py
stroka='Микропроцессорная система управления'
dir(stroka)
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'removeprefix', 'removesuffix', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
```
## 3.9.1 Методы для работы со строками.
```py
stroka.find('пр')
5
stroka.count("с")
4
stroka.replace(' у',' автоматического у')
'Микропроцессорная система автоматического управления'
spis22=stroka.split(' ')
spis22
['Микропроцессорная', 'система', 'управления']
stroka.upper()
'МИКРОПРОЦЕССОРНАЯ СИСТЕМА УПРАВЛЕНИЯ'
stroka3=" ".join(spis22)
stroka3
'Микропроцессорная система управления'
stroka3.partition("с")
('Микропроце', 'с', 'сорная система управления')
stroka3.rpartition("с")
('Микропроцессорная си', 'с', 'тема управления')
strk1='Момент времени {}, значение = {}'
strk1
'Момент времени {}, значение = {}'
strk1.format(1,89.7)
'Момент времени 1, значение = 89.7'
strk2='Момент времени {1}, значение = {0}:{2}'
strk2.format(36.7,2,'норма!')
'Момент времени 2, значение = 36.7:норма!'
strk3='Момент времени {num}, значение = {znch}'
strk3.format(znch=89.7,num=2)
'Момент времени 2, значение = 89.7'
```
## 3.9.2 Методы для работы со списками.
```py
spsk=list('jifoesd')
spsk
['j', 'i', 'f', 'o', 'e', 's', 'd']
spsk.pop(2)
'f'
spsk.append('c')
spsk
['j', 'i', 'o', 'e', 's', 'd', 'c']
spsk.insert(2,'a')
spsk
['j', 'i', 'a', 'o', 'e', 's', 'd', 'c']
spsk.count('a')
1
```
## 3.9.3 Самостоятельно создайте кортеж и изучите применение его методов.
```py
numbers = (1, 2, 3, 2, 4, 2, 5, 2)
count_2 = numbers.count(2)
count_2
4
```
## 3.9.4 Cамостоятельно изучите методы словарей и множеств.
# Словари
```py
person = {"name": "Alice", "age": 25, "city": "Moscow", "country": "Russia"}
age = person.pop("age")
age
25
person = {"name": "Alice", "age": 25, "city": "Moscow"}
last_item = person.popitem()
last_item
('city', 'Moscow')
```
# Множества
```py
fruits = {"apple", "banana", "orange"}
fruits.add("grape")
fruits
{'grape', 'orange', 'apple', 'banana'}
numbers = {1, 2, 3, 4, 5}
numbers.remove(3)
numbers
{1, 2, 4, 5}
numbers = {1, 2, 3, 4, 5}
numbers.clear()
numbers
set()
```

@ -0,0 +1,111 @@
# Общее контрольное задание по теме 3
Румянцев Вадим, А-03-23
## Задание
Реализовать, записать в текстовый файл и проанализировать результаты последовательности инструкций, выполняющих следующие действия:
• Преобразовать восьмеричное значение 45 в целое число.
• Создать объект-словарь D со значениями {"усиление":23, "запаздывание":12, "постоянная времени":78} и затем осуществить его преобразование в два списка: ключей и значений, а затем – эти два списка преобразовать в один кортеж. Чем отличается кортеж от списка?
• Напишите и выполните единое выражение, осуществляющее деление числа 1768 на 24.8 с округлением вниз, с определением после этого остатка от деления получившегося значения на 3 и затем возведения результата в степень 2.4.
• Напишите и выполните единое выражение, последовательно осуществляющее следующие операции: двоичное И для чисел 13 и 27, инверсия полученного значения, двоичное исключающее ИЛИ для полученного значения и числа 14, сдвиг полученного значения на два разряда влево.
• Создать список с 4 одинаковыми элементами 'колебат' и написать оператор проверки наличия комбинации символов 'аткол' в результате конкатенации второго и третьего элементов этого списка.
• Определить список методов, доступных у ранее созданного словаря D. Поочередно использовать его методы keys и values, определить, что можно получить с применением этих методов.
• Создать объект - символьную строку с текстом данного предложения. Из символьной строки создать список, элементами которого будут отдельные слова из созданной строки. Заменить в списке элемент «-» на «,». Удалить из списка элемент со значением «данного». Отобразить получившийся список.
## Решение
## Преобразовать восьмеричное значение 45 в целое число.
```py
hh=oct(45)
hh
'0o55'
hh1=int("55", 8)
hh1
45
```
## Создать объект-словарь D
```py
D = {"усиление": 23, "запаздывание": 12, "постоянная времени": 78}
keys_list = list(D.keys())
keys_list
['усиление', 'запаздывание', 'постоянная времени']
values_list = list(D.values())
values_list
[23, 12, 78]
result = (keys_list, values_list)
result
(['усиление', 'запаздывание', 'постоянная времени'], [23, 12, 78])
result1=tuple(result)
result1
(['усиление', 'запаздывание', 'постоянная времени'], [23, 12, 78])
```
## Напишите и выполните единое выражение
```py
Y= (((1768//24.8)%3)**2.4)
Y
5.278031643091577
```
## Напишите и выполните единое выражение
```py
YY= (~(13&27)^14)<<2
YY
-32
```
## Создать список с 4 одинаковыми элементами
```py
my_list = ['колебат'] * 4
my_list
['колебат', 'колебат', 'колебат', 'колебат']
concatenated = my_list[1] + my_list[2]
concatenated
'колебатколебат'
s = 'аткол' in concatenated
s
True
```
## Определить список методов
```py
D = {"усиление": 23, "запаздывание": 12, "постоянная времени": 78}
dict_methods = [method for method in dir(D)]
dict_methods
['__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']
keys_result = D.keys()
keys_result
dict_keys(['усиление', 'запаздывание', 'постоянная времени'])
values_result = D.values()
values_result
dict_values([23, 12, 78])
```
## Создать объект - символьную строку
```py
text = "Создать объект - символьную строку с текстом данного предложения."
text
'Создать объект - символьную строку с текстом данного предложения.'
words_list = text.split()
words_list
['Создать', 'объект', '-', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения.']
for i in range(len(words_list)):
if words_list[i] == "-":
words_list[i] = ","
words_list
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'данного', 'предложения.']
if "данного" in words_list:
words_list.remove("данного")
words_list
['Создать', 'объект', ',', 'символьную', 'строку', 'с', 'текстом', 'предложения.']
```

@ -0,0 +1,59 @@
# Тест по теме 3
Румянцев Вадим, А-03-23
## Задание
1) Как расшифровывается аббревиатура IDLE? Какую роль играет эта компонента в среде программирования Python?
2) Создайте объект-словарь с 3 элементами, в которых ключами являются строки с названиями профессий, а значениями - списки с элементами: средняя зарплата по соответствующей профессии, вероятность устроиться на работу и возможность профессионального роста (логическое значение). Значения придумайте самостоятельно.
3) Создайте объект-строку с названием одной из профессий и напишите инструкцию, позволяющую для этого объекта определить из словаря список с ее характеристиками.
4) Напишите инструкцию, создающую на основе словаря список со значениями средних зарплат по представленным в словаре профессиям.
5) Напишите инструкцию, вычисляющую среднюю вероятность трудоустройства по представленным в словаре профессиям.
## Решение
# 1)
IDLE - Integrated Development and learning Environment
В среде программирования Python данная компонента используется для первоначального изучения программы, т.к. имеет упрощенный интерфейс по сравнению с IDE
Так же, используя данную компоненту мы можем получать мгновенный ответ на команду - построчное выполнение кода
# 2)
```py
professions = {"Программист": [200000, 0.55, True], "Учитель": [90000, 0.35, True], "Врач": [110000, 0.25, True]}
professions
{'Программист': [200000, 0.55, True], 'Учитель': [90000, 0.35, True], 'Врач': [110000, 0.25, True]}
```
# 3)
```py
profession = "Врач"
characteristics = professions[profession]
characteristics
[110000, 0.25, True]
```
# 4)
```py
money = [profession[0] for profession in professions.values()]
money
[200000, 90000, 110000]
```
# 5)
```py
average = [profession[1] for profession in professions.values()]
average
[0.55, 0.35, 0.25]
average1 = sum(average)/len(average)
average1
0.3833333333333333
```

@ -0,0 +1,59 @@
# Тест по теме 3
Румянцев Вадим, А-03-23
## Задание
1) Как расшифровывается аббревиатура IDLE? Какую роль играет эта компонента в среде программирования Python?
2) Создайте объект-словарь с 3 элементами, в которых ключами являются строки с названиями профессий, а значениями - списки с элементами: средняя зарплата по соответствующей профессии, вероятность устроиться на работу и возможность профессионального роста (логическое значение). Значения придумайте самостоятельно.
3) Создайте объект-строку с названием одной из профессий и напишите инструкцию, позволяющую для этого объекта определить из словаря список с ее характеристиками.
4) Напишите инструкцию, создающую на основе словаря список со значениями средних зарплат по представленным в словаре профессиям.
5) Напишите инструкцию, вычисляющую среднюю вероятность трудоустройства по представленным в словаре профессиям.
## Решение
# 1)
IDLE - Integrated Development and learning Environment
В среде программирования Python данная компонента используется для первоначального изучения программы, т.к. имеет упрощенный интерфейс по сравнению с IDE
Так же, используя данную компоненту мы можем получать мгновенный ответ на команду - построчное выполнение кода
# 2)
```py
professions = {"Программист": [200000, 0.55, True], "Учитель": [90000, 0.35, True], "Врач": [110000, 0.25, True]}
professions
{'Программист': [200000, 0.55, True], 'Учитель': [90000, 0.35, True], 'Врач': [110000, 0.25, True]}
```
# 3)
```py
profession = "Врач"
characteristics = professions[profession]
characteristics
[110000, 0.25, True]
```
# 4)
```py
money = [profession[0] for profession in professions.values()]
money
[200000, 90000, 110000]
```
# 5)
```py
average = [profession[1] for profession in professions.values()]
average
[0.55, 0.35, 0.25]
average1 = sum(average)/len(average)
average1
0.3833333333333333
```

@ -0,0 +1,25 @@
Python 3.11.5 (tags/v3.11.5:cce6ba9, Aug 24 2023, 14:38:34) [MSC v.1936 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> professions = {["Программист", 200000, 0.55, True], ["Учитель", 90000, 0.35, True], ["Врач", 110000, 0.25, True]}
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
professions = {["Программист", 200000, 0.55, True], ["Учитель", 90000, 0.35, True], ["Врач", 110000, 0.25, True]}
TypeError: unhashable type: 'list'
>>> professions = {"Программист": [200000, 0.55, True], "Учитель": [90000, 0.35, True], "Врач": [110000, 0.25, True]}
>>> professions
{'Программист': [200000, 0.55, True], 'Учитель': [90000, 0.35, True], 'Врач': [110000, 0.25, True]}
>>> profession = "Врач"
>>> characteristics = professions[profession]
>>> characteristics
[110000, 0.25, True]
>>>
>>> money = [profession[0] for profession in professions.values()]
>>> money
[200000, 90000, 110000]
>>>
>>> average = [profession[1] for profession in professions.values()]
>>> average
[0.55, 0.35, 0.25]
>>> average1 = sum(average)/len(average)
>>> average1
0.3833333333333333

@ -0,0 +1,533 @@
Python 3.11.5 (tags/v3.11.5:cce6ba9, Aug 24 2023, 14:38:34) [MSC v.1936 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
logiz=bool(56)
logiz1=bool(56)
logiz1
True
logiz2=bool(0)
logiz2
False
logiz3=bool("beta")
logiz3
True
logiz4=bool("")
logiz4
False
tt1=int(198.6)
tt1
198
tt2=int("-76")
tt2
-76
tt3=int("B",16)
tt3
11
tt4=int("71",8)
tt4
57
tt5=int("98.76")
Traceback (most recent call last):
File "<pyshell#18>", line 1, in <module>
tt5=int("98.76")
ValueError: invalid literal for int() with base 10: '98.76'
flt1=float(789)
flt1
789.0
flt2=float(-6,78e2)
Traceback (most recent call last):
File "<pyshell#22>", line 1, in <module>
flt2=float(-6,78e2)
TypeError: float expected at most 1 argument, got 2
flt2=float(-6.78e2)
flt2
-678.0
flt3=float("infinity")
flt3
inf
flt4=float("-inf")
flt4
-inf
hh=123
dv1=bin(hh)
dv1
'0b1111011'
vos1=oct(hh)
vos1
'0o173'
sch1=hex(hh)
sch1
'0x7b'
'0x7b'
'0x7b'
hh1=int(dv1,2)
hh1
123
hh2=int(vos1,8)
hh2
123
hh3=int(sch1,16)
hh3
123
strk1=str(23.6)
strk1
'23.6'
strk2=str(logiz3)
strk2
'True'
strk3=str(["A","B","C"])
strk3
"['A', 'B', 'C']"
strk4=str(("A","B","C"))
strk4
"('A', 'B', 'C')"
strk5=str({"A":1,"B":2,"C":9})
strk5
"{'A': 1, 'B': 2, 'C': 9}"
spis1=list("Строка символов")
spis1
['С', 'т', 'р', 'о', 'к', 'а', ' ', 'с', 'и', 'м', 'в', 'о', 'л', 'о', 'в']
spis2=list((124,236,-15,908))
spis2
[124, 236, -15, 908]
spis3=list({"A":1,"B":2,"C":9})
spis3
['A', 'B', 'C']
spis4=list({"A":2,"B":1,"C":9})
spis4
['A', 'B', 'C']
kort7=tuple('Строка символов')
kort7
('С', 'т', 'р', 'о', 'к', 'а', ' ', 'с', 'и', 'м', 'в', 'о', 'л', 'о', 'в')
kort8=tuple(spis2)
kort8
(124, 236, -15, 908)
kort9=tuple({"A":1,"B":2,"C":9})
kort9
('A', 'B', 'C')
del strk5, kort8
strk5
Traceback (most recent call last):
File "<pyshell#74>", line 1, in <module>
strk5
NameError: name 'strk5' is not defined. Did you mean: 'strk1'?
kort8
Traceback (most recent call last):
File "<pyshell#75>", line 1, in <module>
kort8
NameError: name 'kort8' is not defined. Did you mean: 'kort7'?
name1=str(Румянцев В А)
SyntaxError: invalid syntax. Perhaps you forgot a comma?
name1=str('Румянцев В А')
name1
'Румянцев В А'
name2=list(name1)
name2
['Р', 'у', 'м', 'я', 'н', 'ц', 'е', 'в', ' ', 'В', ' ', 'А']
name3=tuple(name2)
name3
('Р', 'у', 'м', 'я', 'н', 'ц', 'е', 'в', ' ', 'В', ' ', 'А')
name4=str(name4)
Traceback (most recent call last):
File "<pyshell#84>", line 1, in <module>
name4=str(name4)
NameError: name 'name4' is not defined. Did you mean: 'name1'?
name4=str(name3)
name4
"('Р', 'у', 'м', 'я', 'н', 'ц', 'е', 'в', ' ', 'В', ' ', 'А')"
12+7+90
109
5.689e-1-0,456
(0.5689, 456)
5.689e-1-0.456
0.11289999999999994
23.6+54
77.6
14-56.7+89
46.3
-6.7*12
-80.4
-234.5/6
-39.083333333333336
a=178/45
type(a)
<class 'float'>
\
a
3.9555555555555557
b=178//45
b
3
c=-24.6//12.1
c
-3.0
d=5.689e-1 // 2
d
0.0
5.689e-1 // 0.456
1.0
148%33
16
12.6%3.8
1.2000000000000002
5.689e-1 % 0.456
0.11289999999999994
14**3
2744
e=2.7**3.6
у
Traceback (most recent call last):
File "<pyshell#115>", line 1, in <module>
у
NameError: name 'у' is not defined
e
35.719843790663525
5.689e-1 ** 0.456
0.7732080836573664
dv1=9
dv1
9
dv2=~dv1
dv2
-10
7&9
1
7&8
0
bin(7&9)
'0b1'
bin(7&8)
'0b0'
bin(7|9)
'0b1111'
bin(7|8)
'0b1111'
bin(14|5)
'0b1111'
bin(14^5)
'0b1011'
h=14
g=h<<2
g
56
g1=h>>1
h1=bin(h)
h1
'0b1110'
g=bin(h1<<2)
Traceback (most recent call last):
File "<pyshell#140>", line 1, in <module>
g=bin(h1<<2)
TypeError: unsupported operand type(s) for <<: 'str' and 'int'
g=(h1<<2)
Traceback (most recent call last):
File "<pyshell#141>", line 1, in <module>
g=(h1<<2)
TypeError: unsupported operand type(s) for <<: 'str' and 'int'
g=bin(h<<2
)
g
'0b111000'
g1=h>>1
g1
7
g1=bin(h>>1)
g1
'0b111'
g2=bin(h>>2)
g2
'0b11'
h7=1341
h71=bin(h7)
h71
'0b10100111101'
g7=bin(h7<<4)
g7
'0b101001111010000'
g71=bin(h7>>5)
g71
'0b101001'
'Система '+'регулирования'
'Система регулирования'
['abc','de','fg']+['hi','jkl']
['abc', 'de', 'fg', 'hi', 'jkl']
('abc','de','fg')+('hi','jkl')
('abc', 'de', 'fg', 'hi', 'jkl')
'ля-'*5
'ля-ля-ля-ля-ля-'
['ку','-']*3
['ку', '-', 'ку', '-', 'ку', '-']
('кис','-')*4
('кис', '-', 'кис', '-', 'кис', '-', 'кис', '-')
signal1=[0]*3+[1]*99
signal1
[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
signal2=(0,)*3+(1,)*5+(0,)*7
signal2
(0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0)
stroka='Система автоматического управления'
stroka
'Система автоматического управления'
'автомат' in stroka
True
'ку' in ['ку','-']*3
True
'ля-' in ('abc', 'de', 'fg', 'hi', 'jkl')
False
stroka='Температура = %g %s %g'
stroka
'Температура = %g %s %g'
stroka % (16,' меньше ',25)
'Температура = 16 меньше 25'
stroka='Температура = %(zn1)g %(sravn)s %(zn2)g'
stroka
'Температура = %(zn1)g %(sravn)s %(zn2)g'
stroka % {'zn1':16,'sravn':' меньше ','zn2':25}
'Температура = 16 меньше 25'
zz=-12
zz+=5
zz
-7
zz-=3
zz
-10
stroka='Система'
stroka
'Система'
stroka+=' регулирования'
stroka
'Система регулирования'
zz/=2
zz
-5.0
zz*=5
zz
-25.0
zz//=4
zz
-7.0
zz%=2
zz
1.0
zz+=8
zz
9.0
zz**=3
zz
729.0
w=v=10
w
10
v
10
n1,n2,n3=(11,-3,'all')
n1
11
n2
-3
n3
'all'
w==v
True
w!=v
False
w<v
False
w>v
False
w<=v
True
w>=v
True
mnoz1={'pen','book','pen','iPhone','table','book'}
mnoz1
{'pen', 'table', 'iPhone', 'book'}
'book' in mnoz1
True
'cap' in mnoz1
False
dic1={'Saratov':145, 'Orel':56, 'Vologda':45}
dic1
{'Saratov': 145, 'Orel': 56, 'Vologda': 45}
'Vologda' in dic1
True
'Pskov' in dic1
False
56 in dic1.values()
True
dct1={'Institut':['AVTI','IEE','IBB'],'Depart':['UII','PM','VMSS','MM'],'gruppa': ['A-01-15','A-02-15']}
dct1
{'Institut': ['AVTI', 'IEE', 'IBB'], 'Depart': ['UII', 'PM', 'VMSS', 'MM'], 'gruppa': ['A-01-15', 'A-02-15']}
'UII' in dct1['Depart']
True
dct1['Depart'][1] == 'MM'
False
a=17
b=-6
(a>=b) and ('book' in mnoz1) and not ('Pskov' in dic1)
True
(a==b) and ('Pskov' in dic1) or not ('cap' in mnoz1)
True
w=v=10
w is v
True
w1=['A','B']
v1=['A','B']
w1
['A', 'B']
v1
['A', 'B']
w1 is v1
False
stroka='Микропроцессорная система управления'
dir(stroka)
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isascii', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'removeprefix', 'removesuffix', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']
stroka.find('пр')
5
stroka.count("с")
4
stroka.replace(' у',' автоматического у')
'Микропроцессорная система автоматического управления'
spis22=stroka.split(' ')
spis22
['Микропроцессорная', 'система', 'управления']
stroka.upper()
'МИКРОПРОЦЕССОРНАЯ СИСТЕМА УПРАВЛЕНИЯ'
stroka3=" ".join(spis22)
stroka3
'Микропроцессорная система управления'
stroka3.partition("с")
('Микропроце', 'с', 'сорная система управления')
stroka3.rpartition("с")
('Микропроцессорная си', 'с', 'тема управления')
strk1='Момент времени {}, значение = {}'
strk1
'Момент времени {}, значение = {}'
strk1.format(1,89.7)
'Момент времени 1, значение = 89.7'
strk2='Момент времени {1}, значение = {0}:{2}'
SyntaxError: unexpected indent
strk2='Момент времени {1}, значение = {0}:{2}'
strk2.format(36.7,2,'норма!')
'Момент времени 2, значение = 36.7:норма!'
strk3='Момент времени {num}, значение = {znch}'
strk3.format(znch=89.7,num=2)
'Момент времени 2, значение = 89.7'
spsk.pop(2)
Traceback (most recent call last):
File "<pyshell#280>", line 1, in <module>
spsk.pop(2)
NameError: name 'spsk' is not defined. Did you mean: 'spis1'?
spsk=list('jifoesd')
spsk
['j', 'i', 'f', 'o', 'e', 's', 'd']
spsk.pop(2)
'f'
spsk.append('c')
spsk
['j', 'i', 'o', 'e', 's', 'd', 'c']
spsk.insert(2,'a')
spsk
['j', 'i', 'a', 'o', 'e', 's', 'd', 'c']
spsk.count('a')
1
kort=tuple('jhbdfja')
kort
('j', 'h', 'b', 'd', 'f', 'j', 'a')
kort.pop(2)
Traceback (most recent call last):
File "<pyshell#294>", line 1, in <module>
kort.pop(2)
AttributeError: 'tuple' object has no attribute 'pop'
numbers = (1, 2, 3, 2, 4, 2, 5, 2)
count_2 = numbers.count(2)
count_2
4
index_3 = numbers.index('3')
Traceback (most recent call last):
File "<pyshell#298>", line 1, in <module>
index_3 = numbers.index('3')
ValueError: tuple.index(x): x not in tuple
person = {"name": "Alice", "age": 25}
print("Исходный словарь:", person)
# Обновление другим словарем
person.update({"age": 26, "city": "Moscow"})
print("После update:", person)
# Обновление итерируемым объектом
person.update([("country", "Russia"), ("language", "Russian")])
... print("После update списком:", person)
SyntaxError: multiple statements found while compiling a single statement
>>>
>>> person = {"name": "Alice", "age": 25, "city": "Moscow", "country": "Russia"}
>>> age = person.pop("age")
>>> age
25
>>> person = {"name": "Alice", "age": 25, "city": "Moscow"}
>>> last_item = person.popitem()
>>> last_item
('city', 'Moscow')
>>>
>>>
>>> fruits = {"apple", "banana", "orange"}
>>> fruits.add("grape")
>>> fruits
{'grape', 'orange', 'apple', 'banana'}
>>>
>>> numbers = {1, 2, 3, 4, 5}
>>> numbers.remove(3)
>>> numbers
{1, 2, 4, 5}
>>>
>>> numbers = {1, 2, 3, 4, 5}
>>> numbers.clear()
>>> numbers
set()
Загрузка…
Отмена
Сохранить