2013-11-01 129 views

回答

2

行情。嘗試:

python -c 'import os; print os.environ["PATH"]' 

的殼剝出的單引號的命令獲取到Python之前,你可以用下面的命令來查看:

echo 'import os; print os.environ['PATH']' 

(事實上,你可以通過見語法着色這裏有些奇怪的事情將會發生。)

現在,爲什麼會發生這種情況?圍繞PATH的單引號會結束一個字符串並開始一個新字符串。從本質上講,外殼解析它爲以下三個字符串(儘管不換行):

import os; print os.environ[ 
PATH 
] 

而這正是被傳遞到Python,它認爲PATH作爲變量名,並正確地抱怨你的天堂」沒有定義它。請參閱man bash。 (嚴格來說,「我怎樣使用我的shell?」並不是Python問題,甚至是編程問題。)