Python2.7 ~ tilde not recognized in path as home directory macOs

Question:

At some point the tilde symbol ~ was no longer recognized as my home directory, only in Python. ~ still works with in terminal, so I’m not sure what happened but any insight on how to fix it you will save me some typing thanks!

On macOs Mojave

import os
tilde = '~'
print(os.path.exists(tilde))
os.system("if test -d ~; then echo 'exists'; fi")

OUTPUT:

False
exists
Asked By: buzz11

||

Answers:

The ~ is interpreted by the OS, not Python. The way to use it from Python script is:

from os.path import expanduser
home = expanduser("~")

now home will have the path denoted by ~

Answered By: AbtPst

You have to use os.path.expanduser on the path first. Try

print(os.path.exists(os.path.expanduser(tilde)))

instead.

Answered By: holdenweb