Skip to main content

Convenient File Handling Library

Project description

Py7File wraps and unifies the python stdlib file handling modules with a simple and intuitive high-level api.

Think: os.path, shutil etc. via object based method access.
Author: Titusz <tp at py7 de>
License: BSD

Installation

Use easy_install or pip:

pip install py7file

Usage

Here some hopefully self explaining examples of Py7File usage:

from py7file import Py7File

the_file = Py7File('a_file.txt')

# Copy and Move
copied_file = the_file.copy('d_file.txt')  # copied_file is also a Py7file
the_file.move('moved_file.txt')  # moves the file and mutates the reference

# Backup and Restore
the_file.backup()  # creates a_file_backup_001.txt
the_file.backup()  # creates a_file_backup_002.txt
the_file.delete()  # removes a_file.txt from disk (ups...)
the_file.restore() # recovers file from a_file_backup_002.txt

# Unzip and Rezip
zfile = Py7File('a_file.zip')
zfile.unzip() # creates a folder a_file_unzipped with contents of zipfile
zfile.rezip() # repackages subfolder a_file_unzipped to a_file.zip

See test_py7file.py for more examples.

Testing

To run the tests:

python test_py7file.py

Status

Alpha - Use at own risk…

Background

As a started learning programming with python I found the different modules for handling files very confusing and cumbersome to use. While writing my first scripts I found myself writing os.path.join(…) way to often. I still keep mixing up os and shutil based file operations like copy, move, rename. So I started this little module to make things easier…

News

0.5.1

Release date: 10-May-2011

  • basic read method added

  • improved file comparison

0.5

Release date: 09-May-2011

  • fixed filepath property to always give absolute path

0.4

Release date: 08-May-2011

  • fixed to work with files that have no extension

  • fixed getsize test not returning long on osx

  • added md5 based file comparison

  • .is_binary() detects if file is binary or “text”

0.2

Release date: 08-May-2011

  • Fixed for tests on OSX

0.1

Release date: 08-May-2011

  • Initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

py7file-0.5.1.zip (6.2 kB view hashes)

Uploaded Source

py7file-0.5.1.tar.gz (2.6 kB view hashes)

Uploaded Source

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