/sequentium

Sequentium is a user-friendly package that implements various well-known sequences, providing a seamless and intuitive experience for the user

Primary LanguagePythonMIT LicenseMIT

Sequentium


GitHub Release PyPI - Python Version Downloads PyPI - License first-timers-only Static Badge

Sequentium is a user-friendly package that implements various well-known sequences, providing a seamless and intuitive experience for the user.

  • 💻 - installabe via pip
  • 🐍 - compatible with Python 3.9, 3.10, 3.11 and 3.12
  • 📈 - +50 sequences already coded. Click here for a complete list
  • 👍 - intuitive API
  • ✅ - accurately tested

If you would like to contribute to the project, take a look to the section How to contribute in the wiki.

For some practical examples on how to use Sequentium, take al look here.

Quick start

To install Sequentium, use the following command:

pip install sequentium

Suppose you want to work with the Fibonacci sequence. First, import it into your script:

from sequence import FibonacciSequence

fibonacci = FibonacciSequence()

Now, FibonacciSequence is a class representing the Fibonacci sequence. It behaves similarly to a list. You can iterate through it:

for x in fibonacci:
    print(x)
>> 0, 1, 1, 2, 3, 5, 8, 13, 21,...

Or you can access a specific term directly:

fibonacci[8]
>> 21

Slicing is also supported:

fibonacci[2:8]
>> [1, 2, 3, 5, 13]

Additionally, you can check if a number appears in the Fibonacci sequence:

7 in fibonacci
>> False
21 in fibonacci
>> True

Command Line Interface (CLI)

Sequentium provides a Command Line Interface (CLI) for convenient usage from your terminal.

usage: Sequentium [-h] [-v] [--list {integer,generalised} [{integer,generalised} ...]] [-a AT] [-l] [--start START] [--stop STOP] [--step STEP] [-c CONTAINS] [sequence]

Sequentium is a user-friendly package that implements various well-known sequences, providing a seamless and intuitive experience for the user

positional arguments:
  sequence              Specify the name or identifier of the sequence to operate on.

options:
  -h, --help            show this help message and exit
  -v, --version         Display the version information.
  --list {integer,generalised} [{integer,generalised} ...]
                        List of implemented sequences.

sequence options:
  -a AT, --at AT        Retrieve the term at the specified index in the sequence.
  -l, --length          Display the length of the sequence.
  --start START         Define the starting point of the sequence.
  --stop STOP           End point of the sequence (excluded).
  --step STEP           Step size for iterating through the sequence.
  -c CONTAINS, --contains CONTAINS
                        Check if the sequence contains a specific value.

For help with a specific command, see: `sequence help <command>`

Here are some examples illustrating the usage of the Sequentium CLI:

  • specify the index to get a specific element of FibonacciSequence
sequence FibonacciSequence --at 8
>> 21
  • define a range of FibonacciSequence using start and stop parameters
sequence FibonacciSequence --start 2 --stop 8
>> [1, 2, 3, 5, 8, 13]
  • check if a particular number belongs to the FibonacciSequence
sequence FibonacciSequence --contains 7
>> False
sequence FibonacciNumbers --contains 21
>> True