Skip to main content

A calculator that evaluates string expressions both locally or using WolframAlpha.

Project description

calcalc: a toy calculator

This is a calculator for evaluating string expressions (e.g. '2*sin(3/5)', 'mass of the sun in kg'). The statement can be computed either locally or through querying WolframAlpha.

To install using pip: pip install calcalc-toy. To install via GitHub: https://github.com/yanglyu902/UCB-AY250-HW/tree/main/hw_3/my_package.

There are two ways to interact with the package:

Usage 1: from command line

Examples (inside the CalCalc folder):

This command evaluate a simple expression locally with the -s argument:

$ python CalCalc.py -s '2*sin(3)'
0.2822400161197344

This command calculates the mass of the moon through Wolfram with the -w argument. The result is displayed as a plain text:

$ python CalCalc.py -w 'mass of the moon in kg'
7.3459×10^22 kg (kilograms)

If we want to display a float instead, use the --float flag:

$ python CalCalc.py -w 'mass of the moon in kg' --float
7.3459e+22

Usage 2: inside python script/ipython

After pip install, import the calculator like this:

from calcalc.CalCalc import calculate

We can evaluate a simple expression locally:

In [1]: calculate('2*sin(3/5)+log(7)')
Out[2]: 3.075195095845384

We can evalute a Wolfram query using local=False:

In [1]: calculate('mass of the moon in kg', local=False)
Out[2]: 7.3459e+22

The default Wolfram output using python script/ipython is converted float to facilitate further computations (opposite to the command line behavior described above). To display a string instead, use return_float=False:

In [1]: calculate('mass of the moon in kg', local=False, return_float=False)
Out[2]: '7.3459×10^22 kg (kilograms)'

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

calcalc-toy-1.8.tar.gz (8.7 kB view details)

Uploaded Source

File details

Details for the file calcalc-toy-1.8.tar.gz.

File metadata

  • Download URL: calcalc-toy-1.8.tar.gz
  • Upload date:
  • Size: 8.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.32.2 importlib-metadata/4.11.0 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.1

File hashes

Hashes for calcalc-toy-1.8.tar.gz
Algorithm Hash digest
SHA256 716a6171856cdede3401168949243735bc22cf5ea3cb5acfd449273eead3ef9f
MD5 045ff03230d98d6925c1b38c15a8b938
BLAKE2b-256 ecd7a8c022b47d009b1d12c8bed1ebfa523d0da1c2a2943e11cbc1c0187aef18

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page