Skip to main content

oo view of file paths and names, subclassed from bytes/str/unicode

Project description

Tired of calling a function for every path manipulation you need to do?

Is:

>>> path, filename = os.path.split(some_name)
>>> basename, ext = os.path.splitext(filename)
>>> basename = basename + '_01'
>>> new_name = os.path.join(path, basename+ext)

wearing on your nerves?

In short, are you filled with antipathy [1] for os.path?

Then get antipathy and work with Path:

>>> from antipathy import Path
>>> some_name = Path('/home/ethan/source/my_file.txt')
>>> backups = Path('/home/ethan/backup/')
>>> print some_name.path
'/home/ethan/source/'
>>> print some_name.ext
'.txt'
>>> print some_name.exists()
True  # (well, if it happens to exist at this moment ;)
>>> backup = backups / some_name.filename + '_01' + some_name.ext
>>> print backup
'/home/ethan/backup/my_file_01.txt'
>>> some_name.copy(backup)

Because Path is a subclass of bytes/str/unicode, it can still be passed to other functions that expect a bytes/str/unicode object and work seamlessly [2].

[1] https://www.google.com/#q=antipathy

[2] in most cases – there are a few places that do a type check instead of an isinstance check.

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

antipathy-0.81.01.zip (17.3 kB view details)

Uploaded Source

antipathy-0.81.01.tar.gz (15.9 kB view details)

Uploaded Source

File details

Details for the file antipathy-0.81.01.zip.

File metadata

  • Download URL: antipathy-0.81.01.zip
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for antipathy-0.81.01.zip
Algorithm Hash digest
SHA256 6861eabc16e0ee8e0a8262064dcbbc1c58b521c4be62dc2e852048c04db9c2eb
MD5 fc7278079ba4da501a20b2568c59138a
BLAKE2b-256 6df810efcb153dbfd8aabf659f632a7dcdc2d0e26af373c021a52aef32b72084

See more details on using hashes here.

File details

Details for the file antipathy-0.81.01.tar.gz.

File metadata

  • Download URL: antipathy-0.81.01.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for antipathy-0.81.01.tar.gz
Algorithm Hash digest
SHA256 eecd219a0fe17330858e443e156b3c9eb77136e42cb24fc9dccb630859c18f51
MD5 a8d7eccfd16c9cdfda92777389756ca4
BLAKE2b-256 52994616fdb8a5a609a638cead935437dcfd6f99fe21d95ae7f3476f9148ab4f

See more details on using hashes here.

Supported by

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