Skip to main content
Action Readthedocs Codecov PyPI Wheel Codacy Language Pyver Downloads License Bioconda

Citation: Lianming Du, Qin Liu, Zhenxin Fan, Jie Tang, Xiuyue Zhang, Megan Price, Bisong Yue, Kelei Zhao. Pyfastx: a robust Python package for fast random access to sequences from plain and gzipped FASTA/Q files. Briefings in Bioinformatics, 2021, 22(4):bbaa368.

Introduction

The pyfastx is a lightweight Python C extension that enables users to randomly access to sequences from plain and gzipped FASTA/Q files. This module aims to provide simple APIs for users to extract seqeunce from FASTA and reads from FASTQ by identifier and index number. The pyfastx will build indexes stored in a sqlite3 database file for random access to avoid consuming excessive amount of memory. In addition, the pyfastx can parse standard (sequence is spread into multiple lines with same length) and nonstandard (sequence is spread into one or more lines with different length) FASTA format. This module used kseq.h written by @attractivechaos in klib project to parse plain FASTA/Q file and zran.c written by @pauldmccarthy in project indexed_gzip to index gzipped file for random access.

This project was heavily inspired by @mdshw5’s project pyfaidx and @brentp’s project pyfasta.

Features

  • Single file for the Python extension

  • Lightweight, memory efficient for parsing FASTA/Q file

  • Fast random access to sequences from gzipped FASTA/Q file

  • Read sequences from FASTA file line by line

  • Calculate N50 and L50 of sequences in FASTA file

  • Calculate GC content and nucleotides composition

  • Extract reverse, complement and antisense sequences

  • Excellent compatibility, support for parsing nonstandard FASTA file

  • Support for FASTQ quality score conversion

  • Provide command line interface for splitting FASTA/Q file

Installation

Currently, pyfastx supports Python 3.8, 3.9, 3.10, 3.11, 3.12, 3.13, 3.14. Make sure you have installed both pip and Python before starting.

You can install pyfastx via the Python Package Index (PyPI)

pip install pyfastx

Update pyfastx module

pip install -U pyfastx

FASTX

New in pyfastx 0.8.0.

Pyfastx provide a simple and fast python binding for kseq.h to iterate over sequences or reads in fasta/q file. The FASTX object will automatically detect the input sequence format (fasta or fastq) to return different tuple.

FASTA sequences iteration

When iterating over sequences on FASTX object, a tuple (name, seq) will be returned.

>>> fa = pyfastx.Fastx('tests/data/test.fa.gz')
>>> for name,seq in fa:
>>>     print(name)
>>>     print(seq)

>>> #always output uppercase sequence
>>> for item in pyfastx.Fastx('tests/data/test.fa', uppercase=True):
>>>     print(item)

>>> #Manually specify sequence format
>>> for item in pyfastx.Fastx('tests/data/test.fa', format="fasta"):
>>>     print(item)

If you want the sequence comment, you can set comment to True, New in pyfastx 0.9.0.

>>> fa = pyfastx.Fastx('tests/data/test.fa.gz', comment=True)
>>> for name,seq,comment in fa:
>>>     print(name)
>>>     print(seq)
>>>     print(comment)

The comment is the content of header line after the first white space or tab character.

FASTQ reads iteration

When iterating over reads on FASTX object, a tuple (name, seq, qual) will be returned.

>>> fq = pyfastx.Fastx('tests/data/test.fq.gz')
>>> for name,seq,qual in fq:
>>>     print(name)
>>>     print(seq)
>>>     print(qual)

If you want the read comment, you can set comment to True, New in pyfastx 0.9.0.

>>> fq = pyfastx.Fastx('tests/data/test.fq.gz', comment=True)
>>> for name,seq,qual,comment in fq:
>>>     print(name)
>>>     print(seq)
>>>     print(qual)
>>>     print(comment)

The comment is the content of header line after the first white space or tab character.

FASTA

Read FASTA file

Read plain or gzipped FASTA file and build index, support for random access to FASTA.

>>> import pyfastx
>>> fa = pyfastx.Fasta('test/data/test.fa.gz')
>>> fa
<Fasta> test/data/test.fa.gz contains 211 seqs

FASTA records iteration

The fastest way to iterate plain or gzipped FASTA file without building index, the iteration will return a tuple contains name and sequence.

>>> import pyfastx
>>> for name, seq in pyfastx.Fasta('test/data/test.fa.gz', build_index=False):
>>>     print(name, seq)

You can also iterate sequence object from FASTA object like this:

>>> import pyfastx
>>> for seq in pyfastx.Fasta('test/data/test.fa.gz'):
>>>     print(seq.name)
>>>     print(seq.seq)
>>>     print(seq.description)

Iteration with build_index=True (default) return sequence object which allows you to access attributions of sequence. New in pyfastx 0.6.3.

Get FASTA information

>>> # get sequence counts in FASTA
>>> len(fa)
211

>>> # get total sequence length of FASTA
>>> fa.size
86262

>>> # get GC content of DNA sequence of FASTA
>>> fa.gc_content
43.529014587402344

>>> # get GC skew of DNA sequences in FASTA
>>> # New in pyfastx 0.3.8
>>> fa.gc_skew
0.004287730902433395

>>> # get composition of nucleotides in FASTA
>>> fa.composition
{'A': 24534, 'C': 18694, 'G': 18855, 'T': 24179}

>>> # get fasta type (DNA, RNA, or protein)
>>> fa.type
'DNA'

>>> # check fasta file is gzip compressed
>>> fa.is_gzip
True

Get longest and shortest sequence

New in pyfastx 0.3.0

>>> # get longest sequence
>>> s = fa.longest
>>> s
<Sequence> JZ822609.1 with length of 821

>>> s.name
'JZ822609.1'

>>> len(s)
821

>>> # get shortest sequence
>>> s = fa.shortest
>>> s
<Sequence> JZ822617.1 with length of 118

>>> s.name
'JZ822617.1'

>>> len(s)
118

Calculate N50 and L50

New in pyfastx 0.3.0

Calculate assembly N50 and L50, return (N50, L50), learn more about N50,L50

>>> # get FASTA N50 and L50
>>> fa.nl(50)
(516, 66)

>>> # get FASTA N90 and L90
>>> fa.nl(90)
(231, 161)

>>> # get FASTA N75 and L75
>>> fa.nl(75)
(365, 117)

Get sequence mean and median length

New in pyfastx 0.3.0

>>> # get sequence average length
>>> fa.mean
408

>>> # get seqeunce median length
>>> fa.median
430

Get sequence counts

New in pyfastx 0.3.0

Get counts of sequences whose length >= specified length

>>> # get counts of sequences with length >= 200 bp
>>> fa.count(200)
173

>>> # get counts of sequences with length >= 500 bp
>>> fa.count(500)
70

Get subsequences

Subsequences can be retrieved from FASTA file by using a list of [start, end] coordinates

>>> # get subsequence with start and end position
>>> interval = (1, 10)
>>> fa.fetch('JZ822577.1', interval)
'CTCTAGAGAT'

>>> # get subsequences with a list of start and end position
>>> intervals = [(1, 10), (50, 60)]
>>> fa.fetch('JZ822577.1', intervals)
'CTCTAGAGATTTTAGTTTGAC'

>>> # get subsequences with reverse strand
>>> fa.fetch('JZ822577.1', (1, 10), strand='-')
'ATCTCTAGAG'

Key function

New in pyfastx 0.5.1

Sometimes your fasta will have a long header which contains multiple identifiers and description, for example, “>JZ822577.1 contig1 cDNA library of flower petals in tree peony by suppression subtractive hybridization Paeonia suffruticosa cDNA, mRNA sequence”. In this case, both “JZ822577.1” and “contig1” can be used as identifer. you can specify the key function to select one as identifier.

>>> #default use JZ822577.1 as identifier
>>> #specify key_func to select contig1 as identifer
>>> fa = pyfastx.Fasta('tests/data/test.fa.gz', key_func=lambda x: x.split()[1])
>>> fa
<Fasta> tests/data/test.fa.gz contains 211 seqs

Sequence

Get a sequence from FASTA

>>> # get sequence like a dictionary by identifier
>>> s1 = fa['JZ822577.1']
>>> s1
<Sequence> JZ822577.1 with length of 333

>>> # get sequence like a list by index
>>> s2 = fa[2]
>>> s2
<Sequence> JZ822579.1 with length of 176

>>> # get last sequence
>>> s3 = fa[-1]
>>> s3
<Sequence> JZ840318.1 with length of 134

>>> # check a sequence name weather in FASTA file
>>> 'JZ822577.1' in fa
True

Get sequence information

>>> s = fa[-1]
>>> s
<Sequence> JZ840318.1 with length of 134

>>> # get sequence order number in FASTA file
>>> # New in pyfastx 0.3.7
>>> s.id
211

>>> # get sequence name
>>> s.name
'JZ840318.1'

>>> # get sequence description
>>> # New in pyfastx 0.3.1
>>> s.description
'R283 cDNA library of flower petals in tree peony by suppression subtractive hybridization Paeonia suffruticosa cDNA, mRNA sequence'

>>> # get sequence string
>>> s.seq
'ACTGGAGGTTCTTCTTCCTGTGGAAAGTAACTTGTTTTGCCTTCACCTGCCTGTTCTTCACATCAACCTTGTTCCCACACAAAACAATGGGAATGTTCTCACACACCCTGCAGAGATCACGATGCCATGTTGGT'

>>> # get sequence raw string, New in pyfastx 0.6.3
>>> print(s.raw)
>JZ840318.1 R283 cDNA library of flower petals in tree peony by suppression subtractive hybridization Paeonia suffruticosa cDNA, mRNA sequence
ACTGGAGGTTCTTCTTCCTGTGGAAAGTAACTTGTTTTGCCTTCACCTGCCTGTTCTTCACATCAACCTT
GTTCCCACACAAAACAATGGGAATGTTCTCACACACCCTGCAGAGATCACGATGCCATGTTGGT

>>> # get sequence length
>>> len(s)
134

>>> # get GC content if dna sequence
>>> s.gc_content
46.26865768432617

>>> # get nucleotide composition if dna sequence
>>> s.composition
{'A': 31, 'C': 37, 'G': 25, 'T': 41, 'N': 0}

Sequence slice

Sequence object can be sliced like a python string

>>> # get a sub seq from sequence
>>> s = fa[-1]
>>> ss = s[10:30]
>>> ss
<Sequence> JZ840318.1 from 11 to 30

>>> ss.name
'JZ840318.1:11-30'

>>> ss.seq
'CTTCTTCCTGTGGAAAGTAA'

>>> ss = s[-10:]
>>> ss
<Sequence> JZ840318.1 from 125 to 134

>>> ss.name
'JZ840318.1:125-134'

>>> ss.seq
'CCATGTTGGT'

Reverse and complement sequence

>>> # get sliced sequence
>>> fa[0][10:20].seq
'GTCAATTTCC'

>>> # get reverse of sliced sequence
>>> fa[0][10:20].reverse
'CCTTTAACTG'

>>> # get complement of sliced sequence
>>> fa[0][10:20].complement
'CAGTTAAAGG'

>>> # get reversed complement sequence, corresponding to sequence in antisense strand
>>> fa[0][10:20].antisense
'GGAAATTGAC'

Read sequence line by line

New in pyfastx 0.3.0

The sequence object can be iterated line by line as they appear in FASTA file.

>>> for line in fa[0]:
...     print(line)
...
CTCTAGAGATTACTTCTTCACATTCCAGATCACTCAGGCTCTTTGTCATTTTAGTTTGACTAGGATATCG
AGTATTCAAGCTCATCGCTTTTGGTAATCTTTGCGGTGCATGCCTTTGCATGCTGTATTGCTGCTTCATC
ATCCCCTTTGACTTGTGTGGCGGTGGCAAGACATCCGAAGAGTTAAGCGATGCTTGTCTAGTCAATTTCC
CCATGTACAGAATCATTGTTGTCAATTGGTTGTTTCCTTGATGGTGAAGGGGCTTCAATACATGAGTTCC
AAACTAACATTTCTTGACTAACACTTGAGGAAGAAGGACAAGGGTCCCCATGT

Search for subsequence

New in pyfastx 0.3.6

Search for subsequence from given sequence and get one-based start position of the first occurrence

>>> # search subsequence in sense strand
>>> fa[0].search('GCTTCAATACA')
262

>>> # check subsequence weather in sequence
>>> 'GCTTCAATACA' in fa[0]
True

>>> # search subsequence in antisense strand
>>> fa[0].search('CCTCAAGT', '-')
301

FastaKeys

New in pyfastx 0.8.0. We have changed Identifier object to FastaKeys object.

Get keys

Get all names of sequence as a list-like object.

>>> ids = fa.keys()
>>> ids
<FastaKeys> contains 211 keys

>>> # get count of sequence
>>> len(ids)
211

>>> # get key by index
>>> ids[0]
'JZ822577.1'

>>> # check key whether in fasta
>>> 'JZ822577.1' in ids
True

>>> # iterate over keys
>>> for name in ids:
>>>     print(name)

>>> # convert to a list
>>> list(ids)

Sort keys

Sort keys by sequence id, name, or length for iteration

New in pyfastx 0.5.0

>>> # sort keys by length with descending order
>>> for name in ids.sort(by='length', reverse=True):
>>>     print(name)

>>> # sort keys by name with ascending order
>>> for name in ids.sort(by='name'):
>>>     print(name)

>>> # sort keys by id with descending order
>>> for name in ids.sort(by='id', reverse=True)
>>>     print(name)

Filter keys

Filter keys by sequence length and name

New in pyfastx 0.5.10

>>> # get keys with length > 600
>>> ids.filter(ids > 600)
<FastaKeys> contains 48 keys

>>> # get keys with length >= 500 and <= 700
>>> ids.filter(ids>=500, ids<=700)
<FastaKeys> contains 48 keys

>>> # get keys with length > 500 and < 600
>>> ids.filter(500<ids<600)
<FastaKeys> contains 22 keys

>>> # get keys contain JZ8226
>>> ids.filter(ids % 'JZ8226')
<FastaKeys> contains 90 keys

>>> # get keys contain JZ8226 with length > 550
>>> ids.filter(ids % 'JZ8226', ids>550)
<FastaKeys> contains 17 keys

>>> # clear sort order and filters
>>> ids.reset()
<FastaKeys> contains 211 keys

>>> # list a filtered result
>>> ids.filter(ids % 'JZ8226', ids>730)
>>> list(ids)
['JZ822609.1', 'JZ822650.1', 'JZ822664.1', 'JZ822699.1']

>>> # list a filtered result with sort order
>>> ids.filter(ids % 'JZ8226', ids>730).sort('length', reverse=True)
>>> list(ids)
['JZ822609.1', 'JZ822699.1', 'JZ822664.1', 'JZ822650.1']

>>> ids.filter(ids % 'JZ8226', ids>730).sort('name', reverse=True)
>>> list(ids)
['JZ822699.1', 'JZ822664.1', 'JZ822650.1', 'JZ822609.1']

FASTQ

New in pyfastx 0.4.0

Read FASTQ file

Read plain or gzipped file and build index, support for random access to reads from FASTQ.

>>> import pyfastx
>>> fq = pyfastx.Fastq('tests/data/test.fq.gz')
>>> fq
<Fastq> tests/data/test.fq.gz contains 100 reads

FASTQ records iteration

The fastest way to parse plain or gzipped FASTQ file without building index, the iteration will return a tuple contains read name, seq and quality.

>>> import pyfastx
>>> for name,seq,qual in pyfastx.Fastq('tests/data/test.fq.gz', build_index=False):
>>>     print(name)
>>>     print(seq)
>>>     print(qual)

You can also iterate read object from FASTQ object like this:

>>> import pyfastx
>>> for read in pyfastx.Fastq('test/data/test.fq.gz'):
>>>     print(read.name)
>>>     print(read.seq)
>>>     print(read.qual)
>>>     print(read.quali)

Iteration with build_index=True (default) return read object which allows you to access attribution of read. New in pyfastx 0.6.3.

Get FASTQ information

>>> # get read counts in FASTQ
>>> len(fq)
800

>>> # get total bases
>>> fq.size
120000

>>> # get GC content of FASTQ file
>>> fq.gc_content
66.17471313476562

>>> # get composition of bases in FASTQ
>>> fq.composition
{'A': 20501, 'C': 39705, 'G': 39704, 'T': 20089, 'N': 1}

>>> # New in pyfastx 0.6.10
>>> # get average length of reads
>>> fq.avglen
150.0

>>> # get maximum lenth of reads
>>> fq.maxlen
150

>>> # get minimum length of reas
>>> fq.minlen
150

>>> # get maximum quality score
>>> fq.maxqual
70

>>> # get minimum quality score
>>> fq.minqual
35

>>> # get phred which affects the quality score conversion
>>> fq.phred
33

>>> # Guess fastq quality encoding system
>>> # New in pyfastx 0.4.1
>>> fq.encoding_type
['Sanger Phred+33', 'Illumina 1.8+ Phred+33']

Read

Get read from FASTQ

>>> #get read like a dict by read name
>>> r1 = fq['A00129:183:H77K2DMXX:1:1101:4752:1047']
>>> r1
<Read> A00129:183:H77K2DMXX:1:1101:4752:1047 with length of 150

>>> # get read like a list by index
>>> r2 = fq[10]
>>> r2
<Read> A00129:183:H77K2DMXX:1:1101:18041:1078 with length of 150

>>> # get the last read
>>> r3 = fq[-1]
>>> r3
<Read> A00129:183:H77K2DMXX:1:1101:31575:4726 with length of 150

>>> # check a read weather in FASTQ file
>>> 'A00129:183:H77K2DMXX:1:1101:4752:1047' in fq
True

Get read information

>>> r = fq[-10]
>>> r
<Read> A00129:183:H77K2DMXX:1:1101:1750:4711 with length of 150

>>> # get read order number in FASTQ file
>>> r.id
791

>>> # get read name
>>> r.name
'A00129:183:H77K2DMXX:1:1101:1750:4711'

>>> # get read full header line, New in pyfastx 0.6.3
>>> r.description
'@A00129:183:H77K2DMXX:1:1101:1750:4711 1:N:0:CAATGGAA+CGAGGCTG'

>>> # get read length
>>> len(r)
150

>>> # get read sequence
>>> r.seq
'CGAGGAAATCGACGTCACCGATCTGGAAGCCCTGCGCGCCCATCTCAACCAGAAATGGGGTGGCCAGCGCGGCAAGCTGACCCTGCTGCCGTTCCTGGTCCGCGCCATGGTCGTGGCGCTGCGCGACTTCCCGCAGTTGAACGCGCGCTA'

>>> # get raw string of read, New in pyfastx 0.6.3
>>> print(r.raw)
@A00129:183:H77K2DMXX:1:1101:1750:4711 1:N:0:CAATGGAA+CGAGGCTG
CGAGGAAATCGACGTCACCGATCTGGAAGCCCTGCGCGCCCATCTCAACCAGAAATGGGGTGGCCAGCGCGGCAAGCTGACCCTGCTGCCGTTCCTGGTCCGCGCCATGGTCGTGGCGCTGCGCGACTTCCCGCAGTTGAACGCGCGCTA
+
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF:FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF:FF,FFFFFFFFFFFFFFFFFFFFFFFFFF,F:FFFFFFFFF:

>>> # get read quality ascii string
>>> r.qual
'FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF:FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF:FF,FFFFFFFFFFFFFFFFFFFFFFFFFF,F:FFFFFFFFF:'

>>> # get read quality integer value, ascii - 33 or 64
>>> r.quali
[37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 25, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 25, 37, 37, 11, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 11, 37, 25, 37, 37, 37, 37, 37, 37, 37, 37, 37, 25]

>>> # get read length
>>> len(r)
150

FastqKeys

New in pyfastx 0.8.0.

Get fastq keys

Get all names of read as a list-like object.

>>> ids = fq.keys()
>>> ids
<FastqKeys> contains 800 keys

>>> # get count of read
>>> len(ids)
800

>>> # get key by index
>>> ids[0]
'A00129:183:H77K2DMXX:1:1101:6804:1031'

>>> # check key whether in fasta
>>> 'A00129:183:H77K2DMXX:1:1101:14416:1031' in ids
True

Command line interface

New in pyfastx 0.5.0

$ pyfastx -h

usage: pyfastx COMMAND [OPTIONS]

A command line tool for FASTA/Q file manipulation

optional arguments:
  -h, --help     show this help message and exit
  -v, --version  show program's version number and exit

Commands:

    index        build index for fasta/q file
    stat         show detailed statistics information of fasta/q file
    split        split fasta/q file into multiple files
    fq2fa        convert fastq file to fasta file
    subseq       get subsequences from fasta file by region
    sample       randomly sample sequences from fasta or fastq file
    extract      extract full sequences or reads from fasta/q file

Build index

New in pyfastx 0.6.10

$ pyfastx index -h

usage: pyfastx index [-h] [-f] fastx [fastx ...]

positional arguments:
  fastx       fasta or fastq file, gzip support

optional arguments:
  -h, --help  show this help message and exit
  -f, --full  build full index, base composition will be calculated

Show statistics information

$ pyfastx stat -h

usage: pyfastx info [-h] fastx

positional arguments:
  fastx       input fasta or fastq file, gzip support

optional arguments:
  -h, --help  show this help message and exit

Split FASTA/Q file

$ pyfastx split -h

usage: pyfastx split [-h] (-n int | -c int) [-o str] fastx

positional arguments:
  fastx                 fasta or fastq file, gzip support

optional arguments:
  -h, --help            show this help message and exit
  -n int                split a fasta/q file into N new files with even size
  -c int                split a fasta/q file into multiple files containing the same sequence counts
  -o str, --out-dir str
                        output directory, default is current folder

Convert FASTQ to FASTA file

$ pyfastx fq2fa -h

usage: pyfastx fq2fa [-h] [-o str] fastx

positional arguments:
  fastx                 fastq file, gzip support

optional arguments:
  -h, --help            show this help message and exit
  -o str, --out-file str
                        output file, default: output to stdout

Get subsequence with region

$ pyfastx subseq -h

usage: pyfastx subseq [-h] [-r str | -b str] [-o str] fastx [region [region ...]]

positional arguments:
  fastx                 input fasta file, gzip support
  region                format is chr:start-end, start and end position is 1-based, multiple names were separated by space

optional arguments:
  -h, --help            show this help message and exit
  -r str, --region-file str
                        tab-delimited file, one region per line, both start and end position are 1-based
  -b str, --bed-file str
                        tab-delimited BED file, 0-based start position and 1-based end position
  -o str, --out-file str
                        output file, default: output to stdout

Sample sequences

$ pyfastx sample -h

usage: pyfastx sample [-h] (-n int | -p float) [-s int] [--sequential-read] [-o str] fastx

positional arguments:
  fastx                 fasta or fastq file, gzip support

optional arguments:
  -h, --help            show this help message and exit
  -n int                number of sequences to be sampled
  -p float              proportion of sequences to be sampled, 0~1
  -s int, --seed int    random seed, default is the current system time
  --sequential-read     start sequential reading, particularly suitable for sampling large numbers of sequences
  -o str, --out-file str
                        output file, default: output to stdout

Extract sequences

New in pyfastx 0.6.10

$ pyfastx extract -h

usage: pyfastx extract [-h] [-l str] [--reverse-complement] [--out-fasta] [-o str] [--sequential-read]
                       fastx [name [name ...]]

positional arguments:
  fastx                 fasta or fastq file, gzip support
  name                  sequence name or read name, multiple names were separated by space

optional arguments:
  -h, --help            show this help message and exit
  -l str, --list-file str
                        a file containing sequence or read names, one name per line
  --reverse-complement  output reverse complement sequence
  --out-fasta           output fasta format when extract reads from fastq, default output fastq format
  -o str, --out-file str
                        output file, default: output to stdout
  --sequential-read     start sequential reading, particularly suitable for extracting large numbers of sequences

Drawbacks

If you intensively check sequence names exists in FASTA file using in operator on FASTA object like:

>>> fa = pyfastx.Fasta('tests/data/test.fa.gz')
>>> # Suppose seqnames has 100000 names
>>> for seqname in seqnames:
>>>     if seqname in fa:
>>>             do something

This will take a long time to finish. Becuase, pyfastx does not load the index into memory, the in operating is corresponding to sql query existence from index database. The faster alternative way to do this is:

>>> fa = pyfastx.Fasta('tests/data/test.fa.gz')
>>> # load all sequence names into a set object
>>> all_names = set(fa.keys())
>>> for seqname in seqnames:
>>>     if seqname in all_names:
>>>             do something

Testing

The pyfaidx module was used to test pyfastx. First, make sure you have a suitable version installed:

pip install pyfastx

To test pyfastx, you should also install pyfaidx 0.5.8:

pip install pyfaidx==0.5.8

Then, to run the tests:

$ python setup.py test

Acknowledgements

kseq.h and zlib was used to parse FASTA format. Sqlite3 was used to store built indexes. pyfastx can randomly access to sequences from gzipped FASTA file mainly attributed to indexed_gzip.

Release files for pyfastx 2.3.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyfastx 2.3.1
File Size Uploaded
pyfastx-2.3.1.tar.gz 261.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyfastx 2.3.1
File
pyfastx-2.3.1-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
pyfastx-2.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details
pyfastx-2.3.1-cp314-cp314t-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64 Details
pyfastx-2.3.1-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
pyfastx-2.3.1-cp314-cp314t-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64 Details
pyfastx-2.3.1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
pyfastx-2.3.1-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
pyfastx-2.3.1-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details
pyfastx-2.3.1-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
pyfastx-2.3.1-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
pyfastx-2.3.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pyfastx-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
pyfastx-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
pyfastx-2.3.1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
pyfastx-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
pyfastx-2.3.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pyfastx-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
pyfastx-2.3.1-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
pyfastx-2.3.1-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
pyfastx-2.3.1-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
pyfastx-2.3.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pyfastx-2.3.1-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
pyfastx-2.3.1-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
pyfastx-2.3.1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
pyfastx-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
pyfastx-2.3.1-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pyfastx-2.3.1-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
pyfastx-2.3.1-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
pyfastx-2.3.1-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
pyfastx-2.3.1-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
pyfastx-2.3.1-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
pyfastx-2.3.1-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details
pyfastx-2.3.1-cp39-cp39-manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64 Details
pyfastx-2.3.1-cp39-cp39-macosx_11_0_arm64.whl CPython 3.9 CPython 3.9 macOS 11.0+ ARM64 Details
pyfastx-2.3.1-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
pyfastx-2.3.1-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
pyfastx-2.3.1-cp38-cp38-musllinux_1_2_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.2+ x86-64 Details
pyfastx-2.3.1-cp38-cp38-manylinux_2_28_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.28+ x86-64 Details
pyfastx-2.3.1-cp38-cp38-macosx_11_0_arm64.whl CPython 3.8 CPython 3.8 macOS 11.0+ ARM64 Details
pyfastx-2.3.1-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details

Total release size: 32.0 MB

Release files / pyfastx-2.3.1.tar.gz

Download URL pyfastx-2.3.1.tar.gz
Size 261.2 kB
Tags Source
SHA-256 checksum
How to use checksums
19d802cc13ee7774a3068bae3e4d4f419cc69aa237f2dd6366ce220a08b03dca
BLAKE2b-256 checksum
How to use checksums
0430b637657b3b05c318307a74075e106eca49432f80237925c48367bcc2b471
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314t-win_amd64.whl

Download URL pyfastx-2.3.1-cp314-cp314t-win_amd64.whl
Size 693.0 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
b756900b2ce2a66700fa183b4231ac2d63d0d03bcb6d1dba08c2905b9304a985
BLAKE2b-256 checksum
How to use checksums
c0dca8d9ff29b92f60242f2a05280f9bc7e9445394a9a74fced768c4e1f492bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL pyfastx-2.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 883.3 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
b6f8ada3867250d4e48f54bd67653ef8b097ca18bbf07176a2b94896515149bb
BLAKE2b-256 checksum
How to use checksums
319aa70f4dabbe55e439568312006ad83d84cc2f219b0e47078a18f398cfb500
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314t-manylinux_2_28_x86_64.whl

Download URL pyfastx-2.3.1-cp314-cp314t-manylinux_2_28_x86_64.whl
Size 877.1 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
6ffeb1693f4f1ae7283e6527ced49c5a3e1df60ebec4bb145a2c9fb954b5ea28
BLAKE2b-256 checksum
How to use checksums
cb15db9e6a2f6cfc23c8517cd51273f805d2a0dc188a588f7035fd82e4948975
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314t-macosx_11_0_arm64.whl

Download URL pyfastx-2.3.1-cp314-cp314t-macosx_11_0_arm64.whl
Size 744.6 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
377a7f2d96e0ec308cb25a73b8fe7e4539256705fa6b788f0cc12854777770d5
BLAKE2b-256 checksum
How to use checksums
49c02d64d2f197469d2202491364a71846002b4bb10e0f19908e5130ed68d66b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314t-macosx_10_15_x86_64.whl

Download URL pyfastx-2.3.1-cp314-cp314t-macosx_10_15_x86_64.whl
Size 785.2 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
ac3dbabf9ad47407fafbac6e2e842c8f583d480cf34518f103ef0ad5fba6042f
BLAKE2b-256 checksum
How to use checksums
c23b784d043b09d37a17e6a0dee46e3b0b187fbb9937de8a546e7efbb6441b86
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314-win_amd64.whl

Download URL pyfastx-2.3.1-cp314-cp314-win_amd64.whl
Size 691.5 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
9abaabd2f2f24c390707280284dc2dd552f101d52c52a696455c6d2fc6e7c66b
BLAKE2b-256 checksum
How to use checksums
875ae6c2b64b28ff23fbe7557ef1ab2f5e2503c626ce10b55ad14ac342be7048
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL pyfastx-2.3.1-cp314-cp314-musllinux_1_2_x86_64.whl
Size 882.7 kB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
c1669160da91a03a88f21855ff181a25e0114f130473727903f8d3d427a56fd7
BLAKE2b-256 checksum
How to use checksums
e333ac9e38b5961be57237b75e1a57526caa55830105ec4f4baff44d1b7c96ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL pyfastx-2.3.1-cp314-cp314-manylinux_2_28_x86_64.whl
Size 876.2 kB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0bda36e305a66626c56d670f94701797836750933923a9715ba1d240fc040ed1
BLAKE2b-256 checksum
How to use checksums
7ee6dfbac08ae802bfa35247eb4fb0cc798593cda0fd0e5ad71c75d54f121115
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314-macosx_11_0_arm64.whl

Download URL pyfastx-2.3.1-cp314-cp314-macosx_11_0_arm64.whl
Size 744.1 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6e40a35063673c07f3bbe0660546f8a4cb2910034a68c6ae2e2b739618f50be3
BLAKE2b-256 checksum
How to use checksums
1c72ea280bc43f1f817aca28c69e40971d7d0cb82126dba7cf732abb72ef5ff3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp314-cp314-macosx_10_15_x86_64.whl

Download URL pyfastx-2.3.1-cp314-cp314-macosx_10_15_x86_64.whl
Size 784.7 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
92468f619af64860fcd856763374893500755e6831e46f4c09e0056c731402f7
BLAKE2b-256 checksum
How to use checksums
1033cea436a8bd149e6d6befd40d02c28443e06fe188e6b8d2e277f5a4320e80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp313-cp313-win_amd64.whl

Download URL pyfastx-2.3.1-cp313-cp313-win_amd64.whl
Size 672.2 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
ce1f60b267b5270886b3749c2988bbcc736aa94dff2d09d4b063e7ac2fe32794
BLAKE2b-256 checksum
How to use checksums
0c8fabd010812c087779de9898b4d3d3efa988c689f99897669ce2301082e69a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL pyfastx-2.3.1-cp313-cp313-musllinux_1_2_x86_64.whl
Size 882.7 kB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
af4ca61588b84a8c8f80698e754280a59592a1da8c646b597512244d072f7880
BLAKE2b-256 checksum
How to use checksums
02efafa6b0f9aa234dfac2e8ba5a767e2a386a058fea4d93d3fa4674612d6ead
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL pyfastx-2.3.1-cp313-cp313-manylinux_2_28_x86_64.whl
Size 876.2 kB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d54496761f94523b92525c51743e655e0994b37629e88d472bc3f9928a5d978f
BLAKE2b-256 checksum
How to use checksums
c28809f10124d29a3b1bd0c8a0362008d1344cd508b032c83c022ba130ce8a65
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp313-cp313-macosx_11_0_arm64.whl

Download URL pyfastx-2.3.1-cp313-cp313-macosx_11_0_arm64.whl
Size 744.0 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
436c8e6cdd5dc1601082d5dc6d3f6031e167f566dfc2e022013e5284cab833ab
BLAKE2b-256 checksum
How to use checksums
0ddd91f9aac031d6f2e7c7c92abe6f81fa818de082630d0e67fd9aa220aa335e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl

Download URL pyfastx-2.3.1-cp313-cp313-macosx_10_13_x86_64.whl
Size 784.5 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
f718a2730d89adfcc18068736d61ba713269283bc3bc56af04cbb50849033cf8
BLAKE2b-256 checksum
How to use checksums
7255480a2c7c040441d2a419dba6c7cbbf87a13fa82df91e16c4441d3a39f4c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp312-cp312-win_amd64.whl

Download URL pyfastx-2.3.1-cp312-cp312-win_amd64.whl
Size 672.2 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
6f01336b5a95d24d30fa3f710fe3858b166f6ec31416273cec538f19dd4d3b08
BLAKE2b-256 checksum
How to use checksums
af894c9ae30ac7e901053cd70143eae82fd36959970349431bfd4cb5a2093427
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL pyfastx-2.3.1-cp312-cp312-musllinux_1_2_x86_64.whl
Size 882.7 kB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
b2b6d0ce18a745249163a3507b2c4794de66396a79ac57eafa0035eac33b72d0
BLAKE2b-256 checksum
How to use checksums
7e0f54647eb0d31c027d766c2d43df15eaccdd3c7f2f1edb7839a9e65239c8c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL pyfastx-2.3.1-cp312-cp312-manylinux_2_28_x86_64.whl
Size 876.2 kB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7774085d02a0500bd86e3e9a2b1d10900130f73d34cc0bb341d15473738b746f
BLAKE2b-256 checksum
How to use checksums
78cb14c4c17f114736ad2b3e65ae97e0102048d1adf73c4a532ab9cd6da2ea3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp312-cp312-macosx_11_0_arm64.whl

Download URL pyfastx-2.3.1-cp312-cp312-macosx_11_0_arm64.whl
Size 744.2 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0badf3fd4bbb3240c9dd3a97546b887a7d2761b48264e1dafcd7cdb1020b2f01
BLAKE2b-256 checksum
How to use checksums
e0866751ad1ee8d30f4e17efd6c2397d9dcd1ed51787d89c8b572709e270f6c6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp312-cp312-macosx_10_13_x86_64.whl

Download URL pyfastx-2.3.1-cp312-cp312-macosx_10_13_x86_64.whl
Size 784.7 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
179848af93735327c988cb2e017b36d2634b53d9b5b39a4c93748197cb911e63
BLAKE2b-256 checksum
How to use checksums
62eb368aa67d7f228132834ec36795b2ebf926804227ec2c3887955307ba1cac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp311-cp311-win_amd64.whl

Download URL pyfastx-2.3.1-cp311-cp311-win_amd64.whl
Size 672.0 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
77eeed2087860d343010f2c84a18b5ac05b8242048341969296804d02cb0a800
BLAKE2b-256 checksum
How to use checksums
3d4ca4b0a04d7511c39392c03e2acbb06d22e53e236ee101321dc374e675235b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL pyfastx-2.3.1-cp311-cp311-musllinux_1_2_x86_64.whl
Size 882.4 kB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
638d54248aa38a0ec9e7d7861a22a4bfd845931431131497b822c827763b3ec6
BLAKE2b-256 checksum
How to use checksums
2c24973cf8ed916714a4b48401e1452e83da5315df99a9b471e68df25b6fd48b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL pyfastx-2.3.1-cp311-cp311-manylinux_2_28_x86_64.whl
Size 876.1 kB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
971d97144e5711852827cc77acaa991e7c740a1353fbddea01190438d8d0a619
BLAKE2b-256 checksum
How to use checksums
94c950c80a29acd500fb230a16a5bfed1470bf6e8099d2093d4dce16a84ebc1f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp311-cp311-macosx_11_0_arm64.whl

Download URL pyfastx-2.3.1-cp311-cp311-macosx_11_0_arm64.whl
Size 744.0 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
cf126cd3b40b83b1f0822c18c56c1d3d59724aec344e2468741f9cd6aaa3a327
BLAKE2b-256 checksum
How to use checksums
b2014dfe82039be581167bdd9b4adb9dcd980cb568273c44fe700666acab843a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl

Download URL pyfastx-2.3.1-cp311-cp311-macosx_10_9_x86_64.whl
Size 783.5 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
cb6fe3cfeab311eebdc58d4c3f36c3ce10cd688a1ea9db361497e90cc60f9ca0
BLAKE2b-256 checksum
How to use checksums
f37c27fbfce179cf76dfdb2bc32098ea7216483001dc3508604a4247e9a81290
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp310-cp310-win_amd64.whl

Download URL pyfastx-2.3.1-cp310-cp310-win_amd64.whl
Size 672.0 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
4605827ab9c2a09ea8d52750cb8cac0229c87557bd9b4159cf7e54f8784998c4
BLAKE2b-256 checksum
How to use checksums
059f721388dbb709e61ca77484aacf178a89381e9cacea921315ab96249da97f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL pyfastx-2.3.1-cp310-cp310-musllinux_1_2_x86_64.whl
Size 882.4 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
ef65975dce3e74913b3f1aca607ec20140d90b3bf9ed2967b9250c8619bc11f0
BLAKE2b-256 checksum
How to use checksums
d797f9b38d88eed26f60257517dc9fb49ce385c935b3b2dc4a89a9d9b358b37c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL pyfastx-2.3.1-cp310-cp310-manylinux_2_28_x86_64.whl
Size 876.2 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
e78e7ca4570dc260379b7d6326ba9cad02d3d896fa61ad02c5c39a9c78360dd8
BLAKE2b-256 checksum
How to use checksums
b7b8496ba5b826ec2cda764591c851bfeb276a65c765065eb07abef2dfc79a32
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp310-cp310-macosx_11_0_arm64.whl

Download URL pyfastx-2.3.1-cp310-cp310-macosx_11_0_arm64.whl
Size 744.0 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6d6023c4fe76990582798731567b68f06cdd1039406cb47c8b8013701d0fb396
BLAKE2b-256 checksum
How to use checksums
b936d818730bf020ed07a79c7f1990ddf2e088ac901e90535393cdcbbab49066
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp310-cp310-macosx_10_9_x86_64.whl

Download URL pyfastx-2.3.1-cp310-cp310-macosx_10_9_x86_64.whl
Size 783.5 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
093aee7cc22812371f8b94c5e4e9aaec68ef1ebcba46bd708214806c97aa12d3
BLAKE2b-256 checksum
How to use checksums
cff7b2e81584303f8d03492ef361352a41d922ffaf89dde6465befbd772aa240
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp39-cp39-win_amd64.whl

Download URL pyfastx-2.3.1-cp39-cp39-win_amd64.whl
Size 672.0 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
99342462e8c4799ce90572f2ef8de3ebd90205dd9e0472b711345664fb71aaf3
BLAKE2b-256 checksum
How to use checksums
de588b481e2d9d8ea63e1c77461bacfd0c1732a00716ad1b8d285f6105c63c8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL pyfastx-2.3.1-cp39-cp39-musllinux_1_2_x86_64.whl
Size 882.5 kB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
43213058881f9d9ccfeb3399179735d5c6b59dacba18187c9dde440cb8d2a48f
BLAKE2b-256 checksum
How to use checksums
02569d77f1db08d8482237e5cb36a38066581ae2f2bfa070d69a22fbfa343658
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp39-cp39-manylinux_2_28_x86_64.whl

Download URL pyfastx-2.3.1-cp39-cp39-manylinux_2_28_x86_64.whl
Size 876.2 kB
Tags CPython 3.9 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
085d20891cb4bd99fcbc178a905a506f6721be7bd53ee7db3af38fc35a2243f4
BLAKE2b-256 checksum
How to use checksums
a0255127775c18f6556625b64d75ef396eb10fb297ba2ed6b84c44cdd8c6998f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp39-cp39-macosx_11_0_arm64.whl

Download URL pyfastx-2.3.1-cp39-cp39-macosx_11_0_arm64.whl
Size 744.0 kB
Tags CPython 3.9 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
03e5cad55d5afa0c4824480bbb03100a85439839fb95edeb06f79d4dfb38f92f
BLAKE2b-256 checksum
How to use checksums
f5c60f4dccea0690e7c25562378f95d0c4b00f500057d0480e3558b9a5f23139
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp39-cp39-macosx_10_9_x86_64.whl

Download URL pyfastx-2.3.1-cp39-cp39-macosx_10_9_x86_64.whl
Size 783.5 kB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
5d70b4ca6dc64da46fb828e230fb381ad2d4f4a3edd362ed6e6ce15e3c091d66
BLAKE2b-256 checksum
How to use checksums
f94be0dbe66f5939682858d3f5c243b29ce12b52522daaf5ed2afa1c0da02321
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp38-cp38-win_amd64.whl

Download URL pyfastx-2.3.1-cp38-cp38-win_amd64.whl
Size 671.9 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
ee6f4949f1c3204d78c612d9c834d0e6588979aaa24f3189d741c2a22d1b2963
BLAKE2b-256 checksum
How to use checksums
a6805da617852db950e522973298d5fd7e87f0bcaf068e330bb9de118534bd53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp38-cp38-musllinux_1_2_x86_64.whl

Download URL pyfastx-2.3.1-cp38-cp38-musllinux_1_2_x86_64.whl
Size 882.2 kB
Tags CPython 3.8 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
5bbc2c2154d6b1e75cc1f1bcf1ed2640938f2adc38a8573d4dc2313fa9f23e5c
BLAKE2b-256 checksum
How to use checksums
706939febfdcde3ec691136db34e36c410f8f936d66df2514ac37bd1227bdbb4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp38-cp38-manylinux_2_28_x86_64.whl

Download URL pyfastx-2.3.1-cp38-cp38-manylinux_2_28_x86_64.whl
Size 875.8 kB
Tags CPython 3.8 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
086f0c2941dd6f44a17bdb1dcf39047370fa995182ba3f9bc02c2919d9c81309
BLAKE2b-256 checksum
How to use checksums
7697f60b62f2a5eb55a878ad67cf8e659431ba410928e0e25d4184c062b4bf35
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp38-cp38-macosx_11_0_arm64.whl

Download URL pyfastx-2.3.1-cp38-cp38-macosx_11_0_arm64.whl
Size 743.9 kB
Tags CPython 3.8 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
45608ecdc36766d5331fa3bbe0c1f93c0aee35138bc6a79fad2c615dd2ddf022
BLAKE2b-256 checksum
How to use checksums
a18da0bd99487eb7d6540b0b66c04a21fbac977fe4e21c490172e8ca9cf9047c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release files / pyfastx-2.3.1-cp38-cp38-macosx_10_9_x86_64.whl

Download URL pyfastx-2.3.1-cp38-cp38-macosx_10_9_x86_64.whl
Size 783.2 kB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
894f4977d0c4bacc043cbef16bd75fab589049dafe2f0fa84a8dc6c16bdbf730
BLAKE2b-256 checksum
How to use checksums
cb645b3c4f56f9d49f5d1943d0789478f5f49775331fdadb44067ae9da191fff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.12

Release history Release notifications | RSS feed

This release

2.3.1 This release

41 release files

2.3.0

41 release files

2.2.0

57 release files

2.1.0

74 release files

2.0.2

63 release files

2.0.1

63 release files

1.1.0

63 release files

1.0.1

63 release files

1.0.0

63 release files

0.9.0

59 release files

0.8.4

35 release files

0.8.3

41 release files

0.8.1

41 release files

0.8.0

24 release files

0.7.0

37 release files

0.6.9

32 release files

0.6.8

32 release files

0.6.6

29 release files

0.6.5

29 release files

0.6.4

29 release files

0.5.9

40 release files

0.5.8

28 release files

0.5.3

28 release files

0.5.2

28 release files

0.5.1

28 release files

0.5.0

28 release files

0.4.0

16 release files

0.3.9

16 release files

0.3.8

16 release files

0.3.7

16 release files

0.3.6

16 release files

0.2.9

16 release files

0.2.8

16 release files

0.2.7

16 release files

0.2.6

16 release files

0.2.5

16 release files

0.2.4

16 release files

0.2.3

16 release files

0.2.2

15 release files

0.2.1

15 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page