Wage calculator module
Module for salary calculations and conversions
Installation
Use the following command to install the wage module from PyPi with pip:
pip install wage
Or to install the latest version of the repository with pip:
pip install git+https://github.com/miliarch/wage.git
Or you can clone this repository to your system:
git clone https://github.com/miliarch/wage.git
Usage - Salary object
Import the Salary class:
>>> from salary import Salary
Create a new salary object - in this example, base the salary on $15 per hour:
>>> s = Salary(15, 'hour')
Access properties (hourly, daily, etc.) as needed:
>>> s.hourly.decimal
Decimal('15')
>>> s.hourly.dollars
'$15.00'
>>> s.hours_in_year
2080
Help and examples
Help on class Salary in module salary.salary:
class Salary(builtins.object)
| Salary(*args, **kwargs)
|
| Class for calculation and conversion of salary by time period
|
| Methods defined here:
|
| __init__(self, *args, **kwargs)
| Salary initialization
|
| Arguments:
| args[0]: required: salary amount (float)
| args[1]: required: salary amount period (string)
| valid options: [hour|day|week|fortnight|month|quarter|semester|year]
|
| Keyword arguments:
| kwargs['hours']: custom hours in year (int) (default: 2080)
| kwargs['days']: custom days in year (int) (default: 260)
| kwargs['weeks']: custom weeks in year (int) (default: 52)
| kwargs['fortnights']: custom fortnights in year (int) (default: 26)
| kwargs['months']: custom months in year (int) (default: 12)
| kwargs['quarters']: custom quarters in year (int) (default: 4)
| kwargs['semesters']: custom semesters in year (int) (default: 2)
|
| Examples:
| Salary(15, 'hour')
| Salary(31200, 'year')
| Salary(15, 'hour', hours=1040, days=130, weeks=26)
|
| __repr__(self)
| Return repr(self).
|
| __str__(self)
| Return str(self).
|
| per_period(self, amount, period, operation=<built-in function truediv>)
| Calculate amount per given period using operation callback function
|
| Parameters:
| amount: required: the amount to base calculation on (Decimal)
| period: required: the period to use for the calculation (str)
| operation: optional: which operator to use against (amount, period) (function)
|
| ----------------------------------------------------------------------
| Readonly properties defined here:
|
| daily
|
| fortnightly
|
| hourly
|
| monthly
|
| quarterly
|
| semesterly
|
| weekly
|
| yearly
|
| ----------------------------------------------------------------------
| Data descriptors defined here:
|
| __dict__
| dictionary for instance variables (if defined)
|
| __weakref__
| list of weak references to the object (if defined)
Usage - command line interface
The command line interface is mainly for demonstration purposes. If you find it helpful, feel free to use it.
The wage entrypoint uses a similar convention to passing arguments in during a new Salary object instantiation.
Examples:
$ wage 15 hour
Hourly : $15.00
Daily : $120.00
Weekly : $600.00
Fortnightly : $1,200.00
Monthly : $2,600.00
Quarterly : $7,800.00
Semesterly : $15,600.00
Yearly : $31,200.00
$ wage 15 hour hours=1500
Hourly : $15.00
Daily : $86.54
Weekly : $432.69
Fortnightly : $865.38
Monthly : $1,875.00
Quarterly : $5,625.00
Semesterly : $11,250.00
Yearly : $22,500.00
Release files for wage 0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wage-0.7.tar.gz | 9.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wage-0.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.6 kB
Release files / wage-0.7.tar.gz
| Download URL | wage-0.7.tar.gz |
|---|---|
| Size | 9.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ce66a392145fb02e8afa8274b751657f94c72894b78893f9b55b88d45c12e839
|
|
BLAKE2b-256 checksum How to use checksums |
e8496f3abe98586f87929a23396b3434456cf7d963a9d01384920a8d077c98ef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|
Release files / wage-0.7-py3-none-any.whl
| Download URL | wage-0.7-py3-none-any.whl |
|---|---|
| Size | 6.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d97a30f0a7d048b6c83019675aae039200eab2871aad5ccb61c74329f510766e
|
|
BLAKE2b-256 checksum How to use checksums |
7e61fc028f248a84e716fb817eea017d7c702b0ca2f611dee2a6c8e490387a5c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|