Как найти процент python

How to print a percentage value?

Given a float between 0 and 1, how to print it as a percentage? For example, 1/3 should print as 33% .

Percent means per hundred. If you have a simple ratio ( 1/3 in your case), you have a per unit value that have to multiply it by 100 to get a percent value. See the other answers for the difference between integer and float division.

FWIW, in Python 3.x print(str(float(1/3))+’%’) will print 0.3333333333333333% — still not exactly what you want, but at least it’s a bit closer. This is because division works differently in that version.

8 Answers 8

>>> f"" '33%' >>> "".format(1/3) '33%' >>> format(1/3, ".0%") '33%' 

Percentage. Multiplies the number by 100 and displays in fixed ( ‘f’ ) format, followed by a percent sign.

The .0 part of the format spec .0% indicates that you want zero digits of precision after the decimal point, because with f»» you would get the string ‘33.333333%’ .

It works with integers, floats, and decimals. See PEP 3101.

@TobiasKienzler, I do not know, if it’s more pythonic. At least it is something you stumble over while reading the code. I think with Python 3 and real division by default this irritation is gone.

Indeed. I wonder why Guido didn’t implement real division from the very start. Rounding 1/3 to 0 should be explicit after all.

In Python 2, I’d use 1.0 instead of float(1) or 1. . IMHO it’s less obtrusive than the former and not as subtle as the latter.

There is a way more convenient ‘percent’-formatting option for the .format() format method:

This is the best answer because it doesn’t require a multiplication by 100. Rather it takes advantage of the fact that format already knows how to print percentages!

This should be the accepted answer. This is much more Pythonic, using built-in capabilities to eliminate the meaningless implementation detail that a multiplication by 100 would be.

Just for the sake of completeness, since I noticed no one suggested this simple approach:

  • %.0f stands for «print a float with 0 decimal places«, so %.2f would print 33.33
  • %% prints a literal % . A bit cleaner than your original +’%’
  • 1.0 instead of 1 takes care of coercing the division to float, so no more 0.0
Читайте также:  Python remove dir recursive

@martialdidit: I’m aware of that, that’s why my answer does not have parenthesis in 1/3 . Evaluation order is intentional: 100.0 * 1 / 3 => 100.0 / 3 => 0.33.

Beg your pardon, @RuggeroTurra? This is formatting, in the broad sense that it transforms an input to display as a string. Please note the OP never required the use of .format() , and % -formatting, also known as string interpolation in Python, is a perfectly valid alternative.

With % you are formatting a float to a string. Not a float to a percentage-string. The multiplication by 100 is done by hand, not by the %. I think the only correct solution which only uses formatting is with

Just to add Python 3 f-string solution

prob = 1.0/3.0 print(f"") # 33% print(f"") # 33.33% 

it should be like this instead: print(f»%»)

@MichalK No, it should not. When your number is a fraction then you need to use f»«, to auto-convert to percentage.

You are dividing integers then converting to float. Divide by floats instead.

To specify a percent conversion and precision.

>>> float(1) / float(3) [Out] 0.33333333333333331 >>> 1.0/3.0 [Out] 0.33333333333333331 >>> ''.format(1.0/3.0) # use string formatting to specify precision [Out] '33%' >>> ''.format(percent=1.0/3.0) [Out] '33.33%' 

Then you’d want to do this instead:

The .0 denotes them as floats and int() rounds them to integers afterwards again.

i know this is from 2011 but . int() does not round. e.g. int(1.9) != 2 . Rounding can be done like so — round(1.9,0) == 2

int() certainly does round down the number. My example does exactly what I meant it to do; cutting off the digits since that’s what the OP wanted.

Stockoverflow is great — a couple of year and still a response. Thank you. However, for the sake of completeness, I want to clarify. int() drops the digits. It does not round down. Rounding implies it does something with the digits. The end result is the same though; in that sense, I see your point. Also, the OP does not clarify what he/she wants to do with the digits has 33.333. does round to 33. Thank you for responding to my comment and have a great day!

Источник

How to Calculate a Percentage in Python

To get a percentage of two numbers in Python, divide them using the division operator ( / ) then multiply the result by 100 using the Python multiplication operator ( * ).

To demonstrate this, let’s get the percentage of 3 out of 9 using Python.

percent = 3 / 9 * 100 print(percent) 

Python Percentage Function

If you need to get percentages many times in your program, it may be worth creating a small helper function.

def getPercent(first, second, integer = False): percent = first / second * 100 if integer: return int(percent) return percent print(getPercent(3, 9)) 

With the above function, to get an integer back pass True as the third argument.

def getPercent(first, second, integer = False): percent = first / second * 100 if integer: return int(percent) return percent print(getPercent(3, 9, True)) 

Источник

Читайте также:  Java gregoriancalendar date format

Как напечатать процентное значение в Python?

Различные области, такие как машинное обучение, наука о данных и глубокое обучение, используют «данные» для построения различных моделей. Мы выполняем разные задачи с «данными»; некоторые числа/результаты представлены в виде ‘Процент ценности‘. Давайте разберемся, как напечатать процентное значение в Python.

Такие области, как машинное обучение и наука о данных, строят модели с использованием языка Python. Иногда эти модели выполняют математические расчеты, а результаты выводятся в виде процентных значений. Например, точность каждой модели печатается в виде процентов, например 99,7% или 98,5%. Эти процентные значения очень важны в этой модели для анализа.

В некоторых моделях нам нужно использовать математические формулы для оценки результатов. Например, очень простые операции, такие как 1,0/3,0 = 0,333, можно преобразовать в процентное значение, т.е. 33%. Эти операции могут быть небольшой частью больших вычислений. Давайте подробно рассмотрим процентные значения.

Что такое процентное значение?

Процентное значение является результатом деления двух чисел и умножения результата на 100. Процентное значение всегда представляется с суффиксом «%». Давайте посмотрим на несколько простых примеров, чтобы понять процентные значения.

Как преобразовать 4/5 в процентное значение?

Результат 4/5 равен 0,8. После умножения значение становится равным 80%. Окончательный результат «80%». Таким образом, мы можем рассчитать процентные значения.

Это очень просто, когда мы выполняем эти расчеты вручную или с помощью калькулятора. В языке Python есть много методов для печати процентных значений. Давайте посмотрим примеры.

Как напечатать процентное значение в Python?

В Python есть разные методы для печати процентного значения. Все методы просты и понятны. Давайте посмотрим примеры один за другим.

Пример 1: Печать процентного значения с использованием функции форматирования в Python

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

Number = 0.75 Percentage_value = "".format(Number) print(Percentage_value)

В примере 1 Число содержит значение с плавающей запятой ‘0,75’, которое используется в .формат() функция. Вторая строка кода состоит из синтаксиса «», который используется для печати знака % и расчета процентов без какой-либо точности. Это значение будет заменено «Числом» и напечатано в следующей строке.

Читайте также:  Определение типов данных php

Процентное значение с использованием функции формата

Результат примера 1 75% что правильно!

Пример 2. Печать процентного значения с использованием функции форматирования в Python (с точностью)

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

В этом коде «» обозначает точность двух чисел в выводе.

Процентное значение с использованием функции формата (с точностью)

Выход примера 2 составляет 88,89%, что правильно!

Пример 3: Печать процентного значения с использованием F-строки в Python

F-строка в Python работает так же, как функция форматирования. Строка f используется с фигурными скобками, а «f» используется в качестве префикса. Эта f-строка заменит элементы из фигурных скобок заданной строкой. Здесь мы заменим исходное значение процентным значением.

Number = 0.53 Percentage_value = f"" print(Percentage_value)

В этом примере 3 мы используем f-строку вместо функции форматирования, но принцип работы такой же. Число содержит значение и ‘:.0%‘ поможет преобразовать исходное значение в процентное значение. Посмотрим на результат.

Процентное значение с использованием строки F

Пример 4. Печать процентного значения с использованием F-строки в Python (с точностью)

Здесь давайте напечатаем процентное значение, используя f-строку в Python.

Здесь, в этом примере 4, процентное значение печатается с точностью до 2, ‘0,2%’ обозначает точки с точностью до 2.

Процентное значение с использованием строки F с точностью

Результат примера 4 — «53,73%», что правильно!

Пример 5: Печать процентного значения с использованием формулы

Существует простая техника/формула для печати процентного значения в Python, которая очень проста, но для знаний мы можем ее реализовать.

Здесь, в этом примере 5, непосредственно используется формула для получения процентного значения. Простая строка печатается со знаком ‘%’. После сравнения всех примеров это самый простой метод печати процентных значений в Python.

Процентное значение с использованием формулы

Краткое содержание

В этой статье подробно рассматривается вопрос о том, как печатать процентные значения. Некоторые основные темы, например, что такое процентное значение? как получить процентное значение? печать процентного значения с использованием различных функций, таких как формат и f-строка, также приведены примеры с точностью. Надеюсь, вам понравится эта статья.

Рекомендации

Прочтите официальную документацию по формат и f-строка для деталей.

Источник

How to Calculate a Percentage in Python

To get a percentage of two numbers in Python, divide them using the division operator ( / ) then multiply the result by 100 using the Python multiplication operator ( * ).

To demonstrate this, let’s get the percentage of 3 out of 9 using Python.

percent = 3 / 9 * 100 print(percent) 

Python Percentage Function

If you need to get percentages many times in your program, it may be worth creating a small helper function.

def getPercent(first, second, integer = False): percent = first / second * 100 if integer: return int(percent) return percent print(getPercent(3, 9)) 

With the above function, to get an integer back pass True as the third argument.

def getPercent(first, second, integer = False): percent = first / second * 100 if integer: return int(percent) return percent print(getPercent(3, 9, True)) 

Источник

Оцените статью