Skip to main content
 首页 » 编程设计

python之如何访问for循环外的局部变量

2025年05月04日15xing901022

我试图在 for 循环外的 for 循环中访问 if 语句内定义的变量。但我收到“无限制本地错误”

我已尝试按照此处的建议分配 lambdaPriceUsWest2 = None: Python Get variable outside the loop

此外,尝试在代码片段之前使用 lambdaPriceUsWest2 = None 在 if 语句中指定 global lambdaPriceUsWest2。

for x in range(len(response['PriceList'])): 
        priceList=json.loads(response['PriceList'][x]) 
        if priceList['product']['sku'] == 'DU9X9ZR8C8DYH3Y9': 
             lambdaPriceUsWest2= priceListpriceList['product']['sku']['USD'] 
 
        if priceList['product']['sku'] == 'CVE47QZ9RSF8DTEM': 
            lambdaPriceUsEast2= priceListpriceList['product']['sku']['USD'] 
            break 
 
logger.debug(lambdaPriceUsWest2) 

预期结果: 0.055512(相似值)

实际结果: 错误:

"errorMessage": "local variable 'lambdaPriceUsWest2' referenced before assignment", 
  "errorType": "UnboundLocalError" 

请您参考如下方法:

最好的方法是在 for 循环之前尝试初始化该变量。例如:

lambdaPriceUsWest2 = ""