In [1]:
import util_make_files

util_make_files.pathlib_basic()

In [2]:
import pathlib
import os

In [3]:
p = pathlib.Path('temp/file.txt')

In [4]:
print(p)


temp/file.txt

In [5]:
print(type(p))


<class 'pathlib.PosixPath'>

In [6]:
print(p.cwd())


/Users/mbp/Documents/my-project/python-snippets/notebook

In [7]:
print(type(p.cwd()))


<class 'pathlib.PosixPath'>

In [8]:
print(pathlib.Path.cwd())


/Users/mbp/Documents/my-project/python-snippets/notebook

In [9]:
print(type(pathlib.Path.cwd()))


<class 'pathlib.PosixPath'>

In [10]:
print(os.getcwd())


/Users/mbp/Documents/my-project/python-snippets/notebook

In [11]:
print(type(os.getcwd()))


<class 'str'>

In [12]:
print(p.resolve())


/Users/mbp/Documents/my-project/python-snippets/notebook/temp/file.txt

In [13]:
p_rel = pathlib.Path('temp/dir/../file.txt')

In [14]:
print(p_rel)


temp/dir/../file.txt

In [15]:
print(p_rel.resolve())


/Users/mbp/Documents/my-project/python-snippets/notebook/temp/file.txt

In [16]:
p_abs = pathlib.Path('/Users/mbp/Documents/my-project/python-snippets/notebook/temp/file.txt')

In [17]:
print(p_abs)


/Users/mbp/Documents/my-project/python-snippets/notebook/temp/file.txt

In [18]:
print(p_abs.relative_to(p.cwd()))


temp/file.txt

In [19]:
print(p_abs.relative_to('/Users/mbp/Documents/my-project'))


python-snippets/notebook/temp/file.txt

In [20]:
# print(p_abs.relative_to('/usr/'))
# ValueError: '/Users/mbp/Documents/my-project/python-snippets/notebook/temp/file.txt' does not start with '/usr'

In [21]:
p_rel = pathlib.Path('temp/dir/sub_dir/file2.txt')

In [22]:
print(p_rel.relative_to('temp/dir'))


sub_dir/file2.txt

In [23]:
print(p_abs)


/Users/mbp/Documents/my-project/python-snippets/notebook/temp/file.txt

In [24]:
print(p_abs.is_absolute())


True

In [25]:
print(p_rel)


temp/dir/sub_dir/file2.txt

In [26]:
print(p_rel.is_absolute())


False

In [27]:
import shutil

shutil.rmtree('temp')