0
我使用這個Python代碼讀取的Windows INI文件請參閱for循環
from ConfigParser import SafeConfigParser
parser = SafeConfigParser()
parser.read('someinifile.ini')
for section_name in parser.sections():
for name, value in parser.items(section_name):
print ' %s = %s' % (name, value)
lastkey = name
工作完全正常,當我試圖獲得最後的鍵名到一個名爲「中的lastKey」變量變量之外。但是,如果您注意到我正嘗試在「for name,value」循環之外讀取「name」變量。這是非法還是不正確? :-)我得到了lastkey中的最後一個鍵名,但想知道我在這裏做錯了什麼。我對寫得不好的代碼有過敏反應,所以在懷疑的時候總是喜歡說清楚。而我全新到Python太」)
我在函數的開始實際上已經初始化「中的lastKey」,但它在這個代碼是不可見的,而當我返回lastkey將會是空的或者有最後一個鍵名,但是我沒有明確地聲明「name」變量,它來自for循環,所以我想知道是否正確地提到了這個變量t循環之外的變量。 –
只有在確定循環運行至少一次迭代時,纔可以在for循環外引用'name'。這就是爲什麼你應該檢查'parser.items(section_name)'是否爲空。 –
好的謝謝你的確認:) –