在編寫Python腳本的時候,我發現,os.path.isdir,os.path.exists,os.walk 根本無法識別 ‘~/‘ 表示的HOME目錄。例如:
Python 2.7.12 (default, Jul 18 2016, 10:55:51) [GCC 6.1.1 20160621 (Red Hat 6.1.1-3)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import os >>> os.path.isdir("~/") False >>> os.path.exists("~/") False >>> for i in os.walk("~/"): ... print i ... >>>
但是“ls -l ~/" 卻能夠正常顯示。目前的折中辦法是使用os.environ['HOME'] 來獲取HOME目錄的絕對路徑。
>>> HOME=os.environ['HOME'] >>> os.path.isdir(HOME) True >>> os.path.exists(HOME) True >>>
