No project description provided
Project description
Percents
Calculating percentages, subtracting a discount, adding a markup is a very common task.
The “Percents” library simplifies the work with percentages. To use it, all you need to do is import the Percent type
from percents import Percent
Next, the idea is simple. For example, we have a sum of $1000, from which we need to subtract 38%.
1000 - Percent(38)
>>> 620
In the same way we can add
1000 + Percent(38)
>>> 1380
To take 38% from this amount, all you have to do is multiply the following
1000 * Percent(38)
>>> 380
The type of data returned always matches the type of the original number
result = 1000.0 + Percent(38)
>>> 1380
type(result)
>>> float
result = Decimal(1000) + Percent(38)
>>> 1380
type(result)
>>> Decimal
Percent can be compared to each other
percent1 = Percent(10)
percent2 = Percent(20)
assert percent2 != percent1
assert percent2 > percent1
assert percent1 < percent2
percent1 = Percent(10)
percent2 = Percent(10)
assert percent2 == percent1
assert percent2 >= percent1
assert percent1 <= percent2
and with other numbers. In this case, the comparison is in terms of percentage points.
percent = Percent(10)
assert percent == 10
assert percent != 11
assert percent > 9
assert percent < 11
assert percent >= 10.0
assert percent <= 10.0
Attributes
The Percent type has two attributes
- Percent.value -- value in percentage points
- Percent.multiplier -- multiplier
percent = Percent(10)
percent.value
>>> 10
percent.multiplier
>>> 0.1
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file percents-1.2.2.tar.gz.
File metadata
- Download URL: percents-1.2.2.tar.gz
- Upload date:
- Size: 2.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db54d154af8a21d85daf6e77fe4028ca1c0f18be642146cf22753b9dff5117f5
|
|
| MD5 |
4db7d54ac93cdfdf0344a9fa6268bba2
|
|
| BLAKE2b-256 |
4448473f1f867cad1e6f3f016a0cfb3ba96b622a82a8501cb7aad13be0c2fbe7
|
File details
Details for the file percents-1.2.2-py3-none-any.whl.
File metadata
- Download URL: percents-1.2.2-py3-none-any.whl
- Upload date:
- Size: 3.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
608ac18119d8f68979317fbcd84ab3988fb5ab3e14f073ae2c64e5cae4c679b1
|
|
| MD5 |
1055e096283f4c3a931410c8601f6324
|
|
| BLAKE2b-256 |
bb1515e917989a71629ab994d31a141b654d54052075b05c92b12b14a29fc19b
|