Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python doesn't find a directory using the home sign ~

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
like image 819
Ohad Perry Avatar asked Mar 30 '15 06:03

Ohad Perry


1 Answers

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().

like image 115
jedwards Avatar answered Sep 28 '22 11:09

jedwards