Skip to main content

fast path manipulation module written in Rust

Project description


Python's os.path module written in Rust


$ pip install setuptools_rust
$ rustup default nightly


$ pip install --upgrade git+


>>> import os.path
>>> import fpath
>>> os.path.abspath("path/to/file")
>>> fpath.abspath("path/to/file")
>>> import timeit
>>> timeit.timeit('import os.path;os.path.abspath("path/to/file")', number=1000*10)
>>> timeit.timeit('import fpath;fpath.abspath("path/to/file")', number=1000*10)


methodname              %        real[p,r]        user[p,r]        sys[p,r]       n
abspath            45.53%   10.15s,  5.53s    6.86s,  2.81s   3.25s,  2.69s  100000
basename           53.52%    0.71s,  0.33s    0.70s,  0.33s   0.00s,  0.00s  100000
dirname            57.43%    1.02s,  0.43s    1.01s,  0.43s   0.00s,  0.00s  100000
isabs              56.55%    0.59s,  0.25s    0.59s,  0.25s   0.00s,  0.00s  100000
islink              0.25%    3.78s,  3.77s    0.01s,  0.01s   0.01s,  0.00s      50
exists              0.25%    3.78s,  3.77s    0.01s,  0.01s   0.01s,  0.00s      50
lexists             0.70%    3.77s,  3.74s    0.01s,  0.01s   0.01s,  0.00s      50
split              53.85%    1.17s,  0.54s    1.17s,  0.54s   0.00s,  0.00s  100000
splitext           62.02%    1.22s,  0.46s    1.21s,  0.46s   0.00s,  0.00s  100000
relpath            52.97%    0.02s,  0.01s    0.01s,  0.01s   0.01s,  0.00s      50
normpath           57.27%    2.02s,  0.86s    2.01s,  0.86s   0.00s,  0.00s  100000
realpath            1.08%   13.39s, 13.25s    0.05s,  0.02s   0.02s,  0.03s      50
join               23.01%    0.24s,  0.19s    0.24s,  0.18s   0.00s,  0.00s  100000
expanduser         67.45%    1.50s,  0.49s    1.49s,  0.48s   0.00s,  0.00s  100000
expandvars         61.37%    1.21s,  0.47s    1.19s,  0.47s   0.00s,  0.00s  100000

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for fpath, version 0.1.2
Filename, size File type Python version Upload date Hashes
Filename, size fpath-0.1.2-cp27-cp27m-macosx_10_11_x86_64.whl (497.4 kB) File type Wheel Python version cp27 Upload date Hashes View
Filename, size fpath-0.1.2-cp37-cp37m-macosx_10_11_x86_64.whl (492.3 kB) File type Wheel Python version cp37 Upload date Hashes View
Filename, size fpath-0.1.2.tar.gz (2.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page