Skip to main content

oo view of file paths and names, subclassed from 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:

>>> 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 str/unicode, it can still be passed to other functions that expect a str/unicode object and work seamlessly.

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

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

Uploaded Source

antipathy-0.77.04.tar.gz (8.8 kB view details)

Uploaded Source

File details

Details for the file antipathy-0.77.04.zip.

File metadata

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

File hashes

Hashes for antipathy-0.77.04.zip
Algorithm Hash digest
SHA256 8a00828ea7f6ba366de65b80717d1f2a662ea5a64de319fc5cd5773f654ecfc2
MD5 9ad8e82681ce58c5d04d52605da08a4d
BLAKE2b-256 6e8746325f9af76bf729b1c98e995dee549414732812f93ba2d4122ab76cd399

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for antipathy-0.77.04.tar.gz
Algorithm Hash digest
SHA256 e8335230b9b26b91ee439a1abc5078d6bf4f7ce38d18cc1b3804ac5f94ac9508
MD5 73d79d1773d904e658e776d256e9f181
BLAKE2b-256 bb058014e82552a27d121bcfc186451b8f87946ee60529a39063686023de4558

See more details on using hashes here.

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