Перейти к содержимому

Как убрать 0 после запятой в python

  • автор:

Как отбросить нули справа?

Форматирую значения в строку, нужно, чтобы сохранялись только значащие разряды справа и если их нет совсем, то число вставлялось в строку как целое. То есть:

x = 10.0 # Типа флот y = 12.2 ' - '.format(x, y) --> '10 12.2' 

Отслеживать
51.4k 86 86 золотых знаков 267 267 серебряных знаков 505 505 бронзовых знаков
задан 17 апр 2012 в 10:12
199 1 1 золотой знак 2 2 серебряных знака 9 9 бронзовых знаков
17 апр 2012 в 10:42

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Тогда только руками:

print(''.format(10.0).rstrip('0').rstrip('.')) 

Либо расширить функционал format:

from string import Formatter class Fmt(Formatter): def format_field(self, value, spec): if spec[-1] == 'p': spec = 'f'.format(spec[:-1]) return super(Fmt, self).format_field(value, spec).rstrip('0').rstrip('.') return super(Fmt, self).format_field(value, spec) fmt = Fmt() print(fmt.format(' - ', 10.0, 10.2)) 

Python. как убрать ненужные 0

Все не целые цифры будут откинуты и округлены. То есть, 10.3 = 10. Но, по моему 10.5 = 11. Но я точно не помню.

Можно выводить не а и b, a их функции f(a) и f(b), причём функция f в случае, когда число х является фактически целым, переопределяет тип и определяется так:

. if x-int(x)==0:return int(x)

Тогда оператор print(f(a),f(b)) выдаст:

10 13.05
Вот пример расчёта гипотенузы прямоугольного треугольника по его катетам а и b (f определена выше!):
import math
a=float(input(«a b container-for-similar»>

Округление чисел и его особенности

Python 3 логотип

Округлением чисел в Python занимается встроенная функция round.

round(number[, ndigits]) — округляет число number до ndigits знаков после запятой (по умолчанию, до нуля знаков, то есть, до ближайшего целого)

   

Со школы многие привыкли, что, когда (N + 1) знак = 5, а последующие знаки равны нулю, округление производится всегда в большую по модулю сторону.

Однако, как видно из примеров, в Python это не так. Здесь используется так называемое "Банковское округление", то есть округление к ближайшему чётному.

На практике это оказывается не так уж и важно, например:

 Что-то не так, правда? На самом деле, всё именно так, как и задумывалось. Просто из-за проблем с точностью чисел с плавающей точкой это число чуть больше, чем 2.85, а потому округляется до 2.9.

Для вставки кода на Python в комментарий заключайте его в теги

  • Модуль csv - чтение и запись CSV файлов
  • Создаём сайт на Django, используя хорошие практики. Часть 1: создаём проект
  • Онлайн-обучение Python: сравнение популярных программ
  • Книги о Python
  • GUI (графический интерфейс пользователя)
  • Курсы Python
  • Модули
  • Новости мира Python
  • NumPy
  • Обработка данных
  • Основы программирования
  • Примеры программ
  • Типы данных в Python
  • Видео
  • Python для Web
  • Работа для Python-программистов
  • Сделай свой вклад в развитие сайта!
  • Самоучитель Python
  • Карта сайта
  • Отзывы на книги по Python
  • Реклама на сайте

Как убрать 0 после запятой в python

Скачай курс
в приложении

Перейти в приложение
Открыть мобильную версию сайта

© 2013 — 2023. Stepik

Наши условия использования и конфиденциальности

Get it on Google Play

Public user contributions licensed under cc-wiki license with attribution required

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *