A mathy Python package with utilities like LCM, triangle numbers, etc.
Project description
Pythagix
Pythagix is a lightweight and dependency-free Python library designed for number theory operations. It provides a clean, efficient interface to common mathematical utilities such as prime number checks, greatest common divisor computation, triangular numbers, and more.
Installation
Install Pythagix using pip:
pip install pythagix
Features
count_factors(number: int) -> List[int] Return a sorted list of all positive factors of the given number.
digit_sum(number: int) -> int Return the sum of all digit in the given number.
filter_primes(numbers: List[int]) -> List[int] Return all prime numbers from a list of integers.
gcd(values: List[int]) -> int Compute the greatest common divisor (GCD) of a list of integers.
is_perfect_square(number: int) -> bool Check whether a number is a perfect square.
is_prime(number: int) -> bool Determine whether a number is prime.
lcm(values: List[int]) -> int Compute the least common multiple (LCM) of a list of integers.
middle(a: int | float, b: int | float) -> float Return the midpoint of two numbers.
nth_prime(position: int) -> int Retrieve the n-th prime number (1-based index).
triangle_number(index: int) -> int Compute the n-th triangular number.
Example Usage
from pythagix import is_prime, nth_prime, gcd, triangle_number
print(is_prime(13)) # Output: True
print(nth_prime(10)) # Output: 29
print(gcd([12, 18, 24])) # Output: 6
print(triangle_number(7)) # Output: 28
Use Cases
Pythagix is ideal for:
Educational platforms and math-related tools
Prototyping algorithms and number-theoretic computations
Teaching foundational concepts in discrete mathematics and number theory
Lightweight CLI utilities and academic scripting
License
Pythagix is released under the MIT License, making it free to use, modify, and distribute.
Contributing
Contributions are welcome! If you'd like to add features, report bugs, or improve documentation, please open an issue or submit a pull request on the GitHub repository.
If you want me to tailor this even more (e.g. add badges, GitHub Actions, versioning, or PyPI metadata snippets), I can assist with that too.
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
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 pythagix-0.2.0.tar.gz.
File metadata
- Download URL: pythagix-0.2.0.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
365eb7e4c7dc961deac6622b39779c66d0dd79aa54844ed8333beb0549579d2a
|
|
| MD5 |
e4d896ba3290fbe7320e874e7af31082
|
|
| BLAKE2b-256 |
0537c719a03f39506ee9109a8d76ccff3d2c4b8e0648f7641db68957e131fea0
|
File details
Details for the file pythagix-0.2.0-py3-none-any.whl.
File metadata
- Download URL: pythagix-0.2.0-py3-none-any.whl
- Upload date:
- Size: 4.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
375b619930347734d1d5a541a05e4ceb24121a1cc81d7532cb18e38045c052a4
|
|
| MD5 |
b54a68fdbe9a726989eda258b93be89a
|
|
| BLAKE2b-256 |
2d9fe652c2a0f582c619bceb4325138c78df89b3608e512f3744b18f9494fd56
|