Какие выражения можно преобразовать в целое десятичное число?

Какие выражения можно преобразовать в целое десятичное число?


Чтобы получить ответ, необходимо каждое из выражений мысленно обернуть в функцию int(). Делать это на практике не рекомендуется, так как на пункте «В» ваш ПК намертво повиснет.


А) Строку преобразовать нельзя, так как в ней есть буквенный символ, не имеющий численного представления в десятичной системе счисления.

Решение - Интерактивный режим

>>> int('123е')
# Получим ошибку ValueError

Б) Строку, имитирующую число с плавающей точкой к типу int преобразовать не получится.

Решение - Интерактивный режим

>>> int('91.4')
# Получим ошибку ValueError

В) Хоть число и имеет немыслимые размеры, при достаточном объеме памяти оно будет преобразовано к типу int;

Решение - Интерактивный режим

>>> int(524.345 ** 435345345311145345)
# Сначала вычисляется возведение в степень, а потом преобразование к целому числу 

Г) Это строка, которая неприводима к целому числу.

Решение - Интерактивный режим

>>> int('7.1 + 4')
# Получим ошибку ValueError 

Д, Е) Строку и число либо выражение внутри строки нельзя сделать целым числом.

Решение - Интерактивный режим

>>> int('4' - 2)
# Получим ошибку TypeError
>>> int('4 - 2')
# Получим ошибку ValueError

Ж) Если внутри строки имеются лишь числа, то Python без проблем сделает из них int

Решение - Интерактивный режим

>>> int('42')
42

З) Число с плавающей точкой преобразуется в целое методом отсечения дробного остатка.

Решение - Интерактивный режим

>>> int(-12.12)
-12

Следовательно, правильные ответы: В, Ж, З.


Report Page