我正在嘗試創建一個具有相同名稱的值的字典。對於例如mylist鍵值應爲['a','b'] 以下代碼無法用正確的名稱替換列表。for循環中的局部和全局範圍
mylist=['a', 'b']
yourlist=['x', 'y']
pw=dict()
for mysheet in ('mylist', 'yourlist'):
pw[mysheet] = mysheet
pw
{'mylist': 'mylist', 'yourlist': 'yourlist'}
# expected result
#{'mylist': ['a', 'b'] , 'yourlist': ['x', 'y']}
for循環是否像函數一樣具有局部和全局作用域?
你想做什麼?實際上,您將字符串元組傳遞給for循環。 – Prajwal
@ karthikr不,不是什麼OP想要的。對於OP:你爲什麼期望你期望的?循環內的'mysheet'指的是字符串不是列表。 – Li357
請參閱[名稱解析](https://docs.python.org/3.5/reference/executionmodel.html#resolution-of-names)。 *在代碼塊中使用名稱時,使用最近的封閉範圍進行解析* – Li357