Skip to content
Advertisement

Python doesn’t find a directory using the home sign ~ [duplicate]

I have created a small Python script to save directories in a side directory, under the current user. I am running on Mac but production is Ubuntu

My problem is the it doesn’t manage to identify the dir with the home sign ~

>>> os.path.exists('/Users/partuck/cache_dir/bla')
True
>>> os.path.exists('~/cache_dir/bla')
False
>>> os.system('echo "$USER"')
partuck
0

Advertisement

Answer

From the docs (here, from the glob module):

(For tilde and shell variable expansion, use os.path.expanduser() and os.path.expandvars().)

You want os.path.expanduser().

User contributions licensed under: CC BY-SA
6 People found this is helpful
Advertisement