Учебник серии Python 57

искусственный интеллект

Друзья, если вам нужно перепечатать, пожалуйста, указывайте источник:blog.CSDN.net/Генерал сказал, о...

Отказ от ответственности: во время обучения технологии искусственного интеллекта многие студенты задавали мне некоторые вопросы, связанные с Python, поэтому, чтобы дать студентам более обширные знания и лучшее понимание технологии искусственного интеллекта, я попросил своего помощника поделиться этой серией. учебников по python Надеюсь, поможет всем! Поскольку этот учебник по Python написан не мной, он не такой забавный и юмористический, как мое обучение технологии ИИ, и его более скучно изучать; но его знания все еще на месте, и его также стоит прочитать! PS: Для студентов, которые не понимают эту статью, пожалуйста, сначала прочитайте предыдущую статью, и вам не составит труда учиться понемногу каждый день шаг за шагом!

Я не знаю, сталкивались ли вы со следующим странным явлением, но одно и то же выражение имеет разные результаты отображения. Первый ниже — это автоматическое эхо в режиме интерактивной подсказки, а второй — это отображение оператора печати:

>>> b / (2.0 + a)         # Auto echo output: more digits

0.80000000000000004

>>> print(b / (2.0 + a))  # print rounds off digits

0.8

Настоящей причиной этого странного результата является аппаратное ограничение чисел с плавающей запятой и его неспособность точно представлять некоторые значения. Поскольку архитектура компьютера выходит за рамки этого руководства, мы кратко объясним, что первый вывод фактически хранится в аппаратном обеспечении компьютера с плавающей запятой, просто вы не привыкли их видеть. Если вы не хотите видеть все цифры, используйте print.

Обратите внимание, что, несмотря на это, не все значения имеют столько цифр для отображения:

>>> 1 / 2.0

0.5

А кроме распечатки и автоматического эхо, есть много способов вывести количество цифр в компьютере:

>>> num = 1 / 3.0

>>> num                    # Echoes

0.33333333333333331




>>> print(num)             # print rounds

0.333333333333

>>> '%e' % num             # String formatting expression

'3.333333e-001'

>>> '%4.2f' % num          # Alternative floating-point format

'0.33'

>>> '{0:4.2f}'.format(num) # String formatting method (Python 2.6 and 3.0)

'0.33'

Последние три из этих методов используют форматирование строк, инструмент гибкого форматирования, который мы рассмотрим в следующей статье.