FilippovDY (FilippovDY) 4 недель назад
Родитель 051e75e33b
Сommit f6f7f6035b

@ -52,8 +52,7 @@ Traceback (most recent call last):
ValueError: invalid literal for int() with base 10: '98.76' ValueError: invalid literal for int() with base 10: '98.76'
``` ```
При выполнении последней инструкции выдано диагностическое сообщение, это происходит При выполнении последней инструкции выдано диагностическое сообщение, это происходит
потому, что команда int ожидает, что ей сообщат строку (только цифры, может быть знак в начале). Здесь есть точка, поэтому возникает потому, что команда int ожидает, что ей сообщат строку (только цифры, может быть знак в начале). Здесь есть точка, поэтому возникает несоответствие ожидаемого формата. Нужно сначала переопределить это число как float, а потом уже применить команду int.
несоответствие.
Преобразование целых чисел или строк символов в вещественное число – с помощью функции float(<Объект>) Преобразование целых чисел или строк символов в вещественное число – с помощью функции float(<Объект>)
@ -145,9 +144,12 @@ inf
>>> kort8=tuple(spis2) #Преобразование списка в кортеж >>> kort8=tuple(spis2) #Преобразование списка в кортеж
>>> kort8 >>> kort8
(124, 236, -15, 908) (124, 236, -15, 908)
>>> kort9=tuple({"A":1,"B":2,"C":9}) #Преобразование словаря в кортеж >>> kort9=tuple({"A":1,"B":2,"C":9}) # Преобразование ключей словаря в кортеж
>>> kort9 >>> kort9
('A', 'B', 'C') ('A', 'B', 'C')
>>> kort9 = tuple(({"A":1,"B":2,"C":9}.values())) # Преобразование значений словаря в кортеж
>>> kort9
(1, 2, 9)
``` ```
@ -319,8 +321,7 @@ TypeError: unsupported operand type(s) for %: 'complex' and 'complex'
'-0b1010' '-0b1010'
``` ```
Результат не совсем совпадает с ожидаемым видом "0110". Это происходит, потому что в python под инверсией подразумевается смена всех 0 на 1, 1 на 0, а еще смена знака, а знак Результат не совсем совпадает с ожидаемым видом "0110". Это происходит, потому что в python под инверсией подразумевается смена всех 0 на 1, 1 на 0, а еще смена знака.
в двоичных числах записывается с помощью дополнительного кода.
Было число 9 (1001), меняем все значения на противоположные (0110), затем надо поменять знак (это значит, что надо инвертировать все значения разрядов - будет 1001) и прибавить к полученному числу единицу (которая отвечает за знак), получаем число 1010. Было число 9 (1001), меняем все значения на противоположные (0110), затем надо поменять знак (это значит, что надо инвертировать все значения разрядов - будет 1001) и прибавить к полученному числу единицу (которая отвечает за знак), получаем число 1010.
Двоичная инверсия делает из числа n число -(n+1). Двоичная инверсия делает из числа n число -(n+1).
@ -669,8 +670,8 @@ False
>>> a is b >>> a is b
True True
``` ```
В Python возможности в плане оперирования памятью сведены к минимуму, и иногда использование памяти оптимизировано. Например, числа от -5 до 256 python подвергает интернированию, т.е. делает так, чтобы они ссылались на один участок памяти. Но с числами, не попадающими в этот диапазон, это не работает. Иногда использование памяти в Python оптимизировано. Например, числа от -5 до 256: Python делает так, чтобы они ссылались на один участок памяти. Но с числами, не попадающими в этот диапазон, это не работает.
В данном случае эти переменные не записаны в один адрес памяти, питон создает для списков два разных обьекта, так как список это изменяемый тип и так как значение для переменных присваивалось по-отдельности.
# 9. Операции с объектами, выполняемые с помощью методов # 9. Операции с объектами, выполняемые с помощью методов
Полный список всех атрибутов любого объекта можно получить с использованием функции dir Полный список всех атрибутов любого объекта можно получить с использованием функции dir

Загрузка…
Отмена
Сохранить