Skip to main content

A mathy Python package with utilities like LCM, triangle numbers, etc.

Project description

Pythagix

Pythagix is a lightweight, dependency-free Python library for number theory operations. It provides a clean and efficient interface for common mathematical utilities such as prime checking, greatest common divisor, triangular numbers, and more.


Installation

You can install Pythagix using pip:

pip install pythagix

Features

count_factors(number: int) -> List[int] Returns a sorted list of all positive factors of the given number.

digit_sum(number: int) -> int Returns the sum of all digits in the given number.

filter_primes(values: List[int]) -> List[int] Filters and returns prime numbers from a list of integers.

gcd(values: List[int]) -> int Computes the greatest common divisor (GCD) of a list of integers.

is_perfect_square(number: int) -> bool Determines whether a number is a perfect square.

is_prime(number: int) -> bool Checks whether a number is prime.

is_multiple(number: int, base: int) -> bool Checks if one number is a multiple of another.

lcm(values: List[int]) -> int Computes the least common multiple (LCM) of a list of integers.

mean(values: List[int | float]) -> float Calculates the arithmetic mean (average) of a list of numbers.

median(values: List[int | float]) -> float Computes the median value of a list.

middle(a: int | float, b: int | float) -> float Returns the midpoint of two numeric values.

mode(values: List[int | float]) -> int | float | List[int | float] Computes the mode(s) of a list. Returns a single value or a list of modes.

nth_prime(position: int) -> int Retrieves the n-th prime number (1-based index).

triangle_number(index: int) -> int Computes the n-th triangular number.

Use Cases

Pythagix is suitable for:

Educational platforms and math-related applications

Prototyping number-theoretic algorithms

Teaching foundational concepts in discrete mathematics

Lightweight command-line tools and academic scripting

License

This project is licensed under the MIT License. You are free to use, modify, and distribute the software as permitted under the license terms.

Contributing

Contributions are welcome.

To report bugs, suggest enhancements, or submit code improvements, please open an issue or create a pull request via the GitHub repository.

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

pythagix-0.2.3.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pythagix-0.2.3-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file pythagix-0.2.3.tar.gz.

File metadata

  • Download URL: pythagix-0.2.3.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.4

File hashes

Hashes for pythagix-0.2.3.tar.gz
Algorithm Hash digest
SHA256 db0bc347acdcb74a9c62e5091e1cec4d844781e7d2f3d99ed5945b1fb6b0da7f
MD5 e927854bd1185137386f91038f0db6ba
BLAKE2b-256 a3b285a7fff5f8d7a44b36edf8ea1663a542f7bba9218eb84f6406d3b1fb5921

See more details on using hashes here.

File details

Details for the file pythagix-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: pythagix-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.4

File hashes

Hashes for pythagix-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a552c7b7e2a6b644d7bf1d6248fa8a36a9d762bbbd38542e77827f02719708b6
MD5 aba2f74e3a46310304de3a6ea4cb5b31
BLAKE2b-256 2fb9102d200643db14199411b462abc6d1fd9c4f1147a0a4f4a007a997d9607b

See more details on using hashes here.

Supported by

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