用__file__ 来获得脚本所在的路径是比较方便的,但这可能得到的是一个相对路径,比如在脚本test.py中写入:
#!/usr/bin/env pythonprint __file__
按相对路径./test.py来执行,则打印得到的是相对路径,按绝对路径执行则得到的是绝对路径。而按用户目录来执行(~/practice/test.py),则得到的也是绝对路径(~被展开)