Вопросы по книге Марка Лутца.
На странице 164:
>>> b / (2.0 + a) # Автоматический вывод: выводится большее число цифр
0.80000000000000004
>>> print(b / (2.0 + a)) # Инструкция print отбрасывает лишние цифры
0.8
Если же пишу самостоятельно, выходит:
>>> b/(2.0+a)
0.8
>>> print(b/(2.0+a))
0.8
Вопрос№1: почему так происходит ? Мое предположение: в версии 3.6.1(которая у меня) пишется этот код по-другому в отличии от версии 3.0-3.1.
Вопрос№2: как сделать, чтобы выводился автоматический вывод чисел ?
На странице 165 схожая проблема с функциями repr и str.
Что должно было получиться:
>>> num = 1 / 3
>>> repr(num)# Используется для автоматического вывода: в форме как есть
‘0.33333333333333331’
>>> str(num) # Используется функцией print: дружественная форма
‘0.333333333333’
Что получилось:
>>> num=1/3
>>> repr(num)
'0.3333333333333333'
>>> str(num)
'0.3333333333333333'