Skip to main content

Current module relative paths and imports

Project description

Latest PyPI Version License Supported Python Versions Format

Travis Codecov

Get the path of a file relative to the current module. Import a Python module relative to the current module. Temporarily change sys.path for imports. Get the path of a file relative to the module of the current caller.

Installation

This package runs under Python 2.7 and 3.5+, use pip to install:

$ pip install current

Usage

Get paths relative to the current module:

>>> import current

>>> here = current.current_path()
>>> parent = current.current_path('..')
>>> bruces = current.current_path('..', 'australia', 'bruces', 'bruces.ini')

Temporarily add the parent directory to sys.path:

>>> with current.inserted_path()
...     import australia

Get paths relative to the module of the callers of the current code:

>>> caller = current.caller_path()
>>> callercaller = current.caller_path(steps=2)

Potential issues

This package uses sys._getframe (which is almost the same as inspect.currentframe, see docs). Under IronPython this might require enabling the FullFrames option of the interpreter.

License

CC0 1.0 Public Domain Dedication

Changelog

Version 0.3.6: Tag Python 3.8 support. Extend test coverage.

Version 0.3.5: Drop Python 3.4 support.

Version 0.3.4: Tag Python 3.7 support.

Version 0.3.3: Drop Python 3.3 support. Add python_requires.

Version 0.3.2: Port tests from nose/unittest to pytest. Update meta data, tag Python 3.5/3.6 support.

Version 0.3.1: Added wheel.

Version 0.3: Added Python 3.3+ support.

Version 0.2.1: Fixed caller_path. Documented sys._getframe dependency.

Version 0.2: Added caller_path.

Version 0.1: First public 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 Distribution

current-0.3.6.zip (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

current-0.3.6-py2.py3-none-any.whl (3.1 kB view details)

Uploaded Python 2Python 3

File details

Details for the file current-0.3.6.zip.

File metadata

  • Download URL: current-0.3.6.zip
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/2.7.16

File hashes

Hashes for current-0.3.6.zip
Algorithm Hash digest
SHA256 5c86c705f2bcf21a08b3b133b462a3b1c4dc660fe977ea81bc6bcda24d8772c2
MD5 076576750d38e3c7f9d8eec1e3bd9d6e
BLAKE2b-256 a1daccef9af879df7e72412143992852b2e33042556b3ce3837cbf1ec5772de4

See more details on using hashes here.

File details

Details for the file current-0.3.6-py2.py3-none-any.whl.

File metadata

  • Download URL: current-0.3.6-py2.py3-none-any.whl
  • Upload date:
  • Size: 3.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.41.0 CPython/2.7.16

File hashes

Hashes for current-0.3.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 bfc5d8202fd76c6d94efddeb71bba4e0e913b2ba40ef7d0a725eabf581ea89f9
MD5 9b7fe278dc78e8d372bb5e2e27732310
BLAKE2b-256 f5aa4005fa53e755e9e4892119947656ced94a61f7debd367f8c42dcee9404c3

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