gpt4 book ai didi

python - 未绑定(bind)本地错误: local variable 'region' referenced before assignment

转载 作者:行者123 更新时间:2023-12-01 07:58:06 26 4
gpt4 key购买 nike

我正在尝试创建一个对象,但遇到了这个问题,但对我来说,我没有犯任何错误。

def handle(self, *args, **options):
for entry in get_dataset():
oblast = Place.objects.get_or_create(name=entry.get('OBL_NAME'))
if entry.get('REGION_NAME') is not None:
region = Place.objects.get_or_create(name=entry.get('REGION_NAME'),
parent=oblast)
if entry.get('CITY_NAME') is not None:
city = Place.objects.get_or_create(name=entry.get('CITY_NAME'),
parent=region)

我不明白为什么区域变量不起作用

最佳答案

在你的最后一部分中,你有

city = Place.objects.get_or_create(..., parent=region)

如果第一个 if 为 false,则变量 region 似乎未定义(代码执行永远不会为 region 赋值) > 在这种情况下)。

也许您需要在第一个 if 之外初始化变量(可能像 region = None 或在第一个 if 之前的东西) 。以下是如何执行此操作的示例,但确切的方法取决于代码的其余部分:

oblast = Place.objects.get_or_create(name=entry.get('OBL_NAME'))

region = None
if entry.get('REGION_NAME') is not None:
region = ...

if entry.get('CITY_NAME') is not None:
city = Place.objects.get_or_create(
name=entry.get('CITY_NAME'),
parent=region)

关于python - 未绑定(bind)本地错误: local variable 'region' referenced before assignment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55849636/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com