Python functions to generate OEIS sequences
Project description
oeis-sequences
Python functions to generate The On-Line Encyclopedia of Integer Sequences (OEIS) sequences
Requirements
Requires python
>= 3.8
Installation
pip install OEISsequences
Usage
After installation, from oeis_sequences import OEISsequences
will import all the functions accessible via OEISsequences.Axxxxxx
.
Alternatively, invidividual functions can be imported as from oeis_sequences.OEISsequences import Axxxxxx
.
For each sequence, there are 3 different kinds of functions:
-
Functions named
Axxxxxx
: Axxxxxx(n) returns the n-th term of OEIS sequence Axxxxxx. -
Functions named
Axxxxxx_T
: returns T(n,k) for OEIS sequences where the natural definition is a 2D table T. -
Functions named
Axxxxxx_gen
: Axxxxxx_gen() returns a generator of OEIS sequence Axxxxxx.
The function Axxxxxx
is best used to compute a single term. The generator Axxxxxx_gen
is typically defined for sequences where terms are best generated sequentially and is best used when computing a sequence of consecutive terms.
For the generator, we can for example use list(islice(Axxxxxx_gen(),10))
to return the first 10 terms of sequence Axxxxxx
Alternatively, setting gen = Axxxxxx_gen()
and using next(gen)
returns the next term of the sequence.
Given Axxxxxx_gen
, one can define a function Axxxxxx
as:
def Axxxxxx(n,offset=1): return next(islice(Axxxxxx_gen(),n-offset,None))
where a(offset) is the first term returned by the generator. This value of offset is the same as the offset parameter in the OEIS database.
Some functions Axxxxxx_gen
contain an optional keyword startvalue
that returns a generator of terms that are larger than or equal to startvalue
.
For some sequences, e.g. A269483
, both types of functions Axxxxxx
and Axxxxxx_gen
are provided.
Examples
Least power of 3 having exactly n consecutive 7's in its decimal representation.
from oeis_sequences.OEISsequences import A131546
print(A131546(5))
>> 721
Minimal exponents m such that the fractional part of (10/9)m obtains a maximum (when starting with m=1).
from itertools import islice
from oeis_sequences.OEISsequences import A153695_gen
print(list(islice(A153695_gen(),10)))
>> [1, 2, 3, 4, 5, 6, 13, 17, 413, 555]
Numbers n such that n3 has one or more occurrences of exactly nine different digits.
from oeis_sequences.OEISsequences import A235811_gen
print(list(islice(A235811_gen(startvalue=1475),10))) # print first 10 terms >= 1475
>> [1475, 1484, 1531, 1706, 1721, 1733, 1818, 1844, 1895, 1903]
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 OEISsequences-0.1.0.tar.gz
.
File metadata
- Download URL: OEISsequences-0.1.0.tar.gz
- Upload date:
- Size: 110.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 038011b086ff664618179bec9e2567a02b2872f96825d0a9993145845fdd2afb |
|
MD5 | 19e4b9687dc3ea3a9bd32b9ce3d85eb8 |
|
BLAKE2b-256 | 63551d9573aa6db898fdbb0da856b9852940798079d275634dbb4b9c2a465fd0 |
Provenance
File details
Details for the file OEISsequences-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: OEISsequences-0.1.0-py3-none-any.whl
- Upload date:
- Size: 115.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87d967de9f03691e4dd5e80fa43a5ee985b4d6c23e26efa1ca334d09188cae89 |
|
MD5 | f875b518eb1de8fc83e0d040b02b3b91 |
|
BLAKE2b-256 | c4bcba8899aada5075a5a662e4797430fedf1d6f8f8d279e0979875522cde1f2 |