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.82.3.zip (17.8 kB view details)

Uploaded Source

antipathy-0.82.3.tar.gz (15.8 kB view details)

Uploaded Source

File details

Details for the file antipathy-0.82.3.zip.

File metadata

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

File hashes

Hashes for antipathy-0.82.3.zip
Algorithm Hash digest
SHA256 2597dadf3bc2e44885229f7dc0b16b351a4a120b1edd0412694be0f8c41076dd
MD5 148d78c18d0a10842a6cf71756df4576
BLAKE2b-256 5d735f32887a4cccd056b87a669caf44da28808ad231a6b2a1a37c125c316569

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for antipathy-0.82.3.tar.gz
Algorithm Hash digest
SHA256 d5f9c002a9d6e6108d18df135c76e20b28f7584c560dfca5be2b093746889821
MD5 9a360def979537687136495bb3e9ccec
BLAKE2b-256 0028260191fb64cdd6029d265fb6128d74ce49d419f13fdfb232393eb89d785a

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