Powerful yet easy command line calculator.
Project description
cli-calc
Powerful yet easy command line calculator.
Introduction
Please note: Using plain python at the command line already does provide a pretty decent calculator:
$ python
Python 3.8.5 (default, Aug 2 2020, 16:00:15)
[Clang 11.0.0 (clang-1100.0.33.17)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 2**10
1024
>>> _ / 10
102.4
>>> import math
>>> math.pi
3.141592653589793
>>> math.sin(math.pi / 2)
1.0
>>> exit()
[ Read more about Python as a Calculator. ]
But not all is straight forward.
For example, if you want to calculate sin(pi/2)
:
- First you need to
import math
, - and then use it with
math.sin( math.pi / 2 )
.
But there must be a better way! And there is...
cli-calc
$ cli-calc
hex, int, float, : INPUT
0x0, 0, 0.0, : 2**10
2**10
0x400, 1024, 1024.0, : _ / 10
1024.0/10
0x66, 102, 102.4, : pi
pi
0x3, 3, 3.141592653589793, : sin(pi / 2)
sin(pi/2)
0x1, 1, 1.0, : q
$
cli-calc
adds the standard math library to the mix, as well as cmath and others.- Provides convenience functions for formatted output, like fractions and IEEE 754.
- Supports line input from files and Unix pipes.
- And some more... :-)
More examples
$ cli-calc
hex, int, float, : INPUT
0x0, 0, 0.0, : cos(pi/2)
cos(pi/2)
0x0, 0, 6.123233995736766e-17, : 0xFF ^ 0b10
0xFF^0b10
0xfd, 253, 253.0, : 2**8-1
2**8-1
0xff, 255, 255.0, : log(e)
log(e)
0x1, 1, 1.0, : comb(49,6)
comb(49,6)
0xd56048, 13983816, 13983816.0, : factorial(42)
factorial(42)
0x3c1581d491b28f523c23abdf35b689c908000000000, 1405006117752879898543142606244511569936384000000000, 1.40500611775288e+51, : random()
random()
0x0, 0, 0.24958817003921918, : cmath.phase(complex(-1.0, 0.0))
cmath.phase(complex(-1.0,0.0))
0x3, 3, 3.141592653589793, : q
$
Included Math Libraries
Ready to use out of the box:
-
standard operators
-, >>, ...
-
standard math library
cd, log, sin, sinh, gamma, pi, e, tau, inf, nan...
-
cmath
phase(complex(-1.0, 0.0)), and then most of the above with complex numbers.
-
random
random, choice(['win', 'lose', 'draw']), mean, ...
-
built in functions
max, help, sum, ...
Installation
pip install cli-calc
Configuration
For convenience, add a shell script in ~/bin
:
cd ~/bin
vi cli-calc
with the following lines:
Note: Please adjust the path!
path=~/path/to/your/cli-calc/
cd $path
python3 -m cli_calc
Make it executable:
chmod a+x cli-calc
then use it anywhere. :-)
echo "7+8" | cli-calc
cat foo.bar | cli-calc
cli-calc
Help
cli-calc
h
--------------------------------------------------
INPUT:
"q" for quit, "h" for help
"_" for last float value
"_int_" for last int value
"sin(pi/2)" for sinus, ...
"pi", "tau" and "e" for pi, tau and Euler
"+f" to add display for fraction, "-f" to suppress display for fraction
Other letters are:
he(x), (o)ctal, (b)inary, (i)nteger,
(f)raction, (t)ruth, i(e)ee, ieee_bi(n), f(r)om_ieee
"float" is always visible
See https://docs.python.org/3/library/math.html, use without "math."
https://www.w3schools.com/python/python_operators.asp
Try "cos(pi/2)", "0xFF ^ 0b10", "2**8-1", "factorial(42)", "help(math)"
--------------------------------------------------
hex, int, float, : INPUT
- Permalink to this document as a github page
Warning
- Use of
eval
is evil. However precautions are taken.
Pull Request
PR's are Welcome!
- Please read more about Contributing
- and our development environment and tool set.
- Or just simply raise an issue.
License
Credits
This project was generated with wemake-python-package
. Current template version is: d06993f12e3ffad79652a2aec86189dee92d94dd. See what is updated since then.
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file cli-calc-0.3.3.tar.gz
.
File metadata
- Download URL: cli-calc-0.3.3.tar.gz
- Upload date:
- Size: 13.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.9.7 Darwin/18.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a48c8e1dee512f583fc3333dc5fba4ea7ac5d7adf9eac09625dc0cc62269caf4 |
|
MD5 | 8a443d125c84a2bcea66a163ecb46529 |
|
BLAKE2b-256 | ef0a5731f7385b76c58771c5bb992d421f038d4bae438ae6bd507ed8d664ad11 |
File details
Details for the file cli_calc-0.3.3-py3-none-any.whl
.
File metadata
- Download URL: cli_calc-0.3.3-py3-none-any.whl
- Upload date:
- Size: 14.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.12 CPython/3.9.7 Darwin/18.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5124e74fcf96a21c390fe8ba66260128124cf7e3ca8667fad0d8dbb657c1fb73 |
|
MD5 | 742476fe212f70956909ae3a27fc9148 |
|
BLAKE2b-256 | 6900075cc3193bd6da3c432920fb5d3f86ac89e34c1ce62f4a3bf76d6a626c01 |