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

Uploaded Source

antipathy-0.81.7.tar.gz (15.1 kB view details)

Uploaded Source

File details

Details for the file antipathy-0.81.7.zip.

File metadata

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

File hashes

Hashes for antipathy-0.81.7.zip
Algorithm Hash digest
SHA256 9f194cdc47fd182732b8d3bbc4e3f37d5f0bf31c3b6e6f718dac176fa318a33e
MD5 aaf832882d26326927db71b24b828f12
BLAKE2b-256 3176118aa2a0a6c8675293494b6b8d1c3677c8c3824bdf932cfe5fea46482bad

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for antipathy-0.81.7.tar.gz
Algorithm Hash digest
SHA256 4727ec71f0f0e1fb1b95b064f606a33982333a4ff0a34e9a448cb316641cc2ca
MD5 c69e89b3d457a6b4c1e3d571b31b0ca4
BLAKE2b-256 072db6aed51f9f13113bd9a2e9e888dcbeb755b60f0e43fc0d76cd1094d05c9d

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