Skip to main content

Filelister is a Python package that makes working with filelists (yes, lists of files) easy.

Project description

Filelister

Filelister is a Python package that makes working with filelists (yes, lists of files) easy.

import filelister as fs

Basic Usage

Creating a Filelist

From Data

You can create a Filelist object from a list, set, tuple, Filelist object, or path to directory.

my_filelist = fs.Filelist(['../file_01.jpg', '../file_02.jpg'])

my_other_filelist = fs.Filelist('path/to/directory/')

From System Files

You can also create a Filelist object by reading from a filelist saved on your system.

my_filelist = fs.read_filelist('path/to/filelist.txt')

Working with Filelists

Manipulating a Filelist

Filelists support a number of conversions, including conversions to a native python list, to a relative filelist, and to an absolute filelist.

my_filelist.to_list()

my_filelist.to_abs()

my_filelist.to_rel()

These commands can also be chained:

my_filelist.to_abs().to_list()

In and Contains

Filelists support a cointains method, as well as the python in operator.

my_filelist.contains('path/to/file')

'path/to/file' in my_filelist

Indexing and Slicing

A filelist can also be indexed and sliced like a normal python list. This will always return a native python list.

my_filelist[1] == 'path/to/file.txt'

my_filelist[:3] == ['path/to/file01.txt', 'path/to/file02.txt', 'path/to/file03.txt']

Saving a Filelist

Arguments

outfile: specify a path to the location in which to write the filelist. output_type: specify the type of filelist to write. Options include 'abs', 'rel', and 'na' (see below). compressed: accepts a boolean. Pass compressed=True to write a compressed filelist.

Usage

my_filelist.save('filelists/my_filelist.txt', output_type='abs', compressed=True)

Note that when saving a relative filelist, the filepaths are converted to be relative to the location of the filelist.

Compression

A filelist can be stored using custom zlib compression by using

my_filelist.save(outfile='compressed_filelist.zz', compressed=True)

This filelist can then be read using

fs.read_filelist('compressed_filelist.zz', compressed=True)

Due to the nature of the compression, a compressed filelist should only be read by filelister.

Types of Filelists

Filelister supports three formats of filelists: Absolute, Relative, and "na"

Absolute

abs refers to an absolute filelist

['path/to/file_01.txt', 'path/to/file_02.txt', 'path/to/file_03.txt']

Relative

rel refers to a relative filelists

['../file_01.txt', '../file_02.txt', '../file_03.txt']

na

na refers to a filelist that is stored with no context, where filepaths are ignored and only filenames are stored

['file_01.txt', 'file_02.txt', 'file_03.txt']

Installation

pip (PyPi)

pip install filelister

Anaconda

Coming soon

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

filelister-0.0.1.tar.gz (6.9 kB view hashes)

Uploaded Source

Built Distribution

filelister-0.0.1-py3-none-any.whl (7.4 kB view hashes)

Uploaded Python 3

Supported by

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