Flask UnboundLocalError:局部变量' latitu'在分配之前引用

时间:2018-05-31 12:38:22

标签: python flask

我有两个文件csv,第一个是餐馆,第二个是旅游景点,所以我有两个经度和纬度列表,我想在地图中查看它们,我的问题是当我想要查看两个同时我收到这个错误:

  

UnboundLocalError:局部变量' latitu'在分配前引用

我管理的代码如下:

fullmap = Map(
        identifier="fullmap",
        varname="fullmap",
        style=(
            "height:100%;"
            "width:100%;"
            "top:0;"
            "left:0;"
            "position:absolute;"
            "z-index:200;"
        ),
        lat= 46.160329 ,
        lng=-1.151139,
        markers=[
            {
            'icon': icons.dots.red,
            'title': prix,
            'lat': lat,
            'lng': lng,
            'infobox': (
                titre+ " <b style='color:#ffcc00;'> " +prix+ "</b>"
                "<h3>surface:<b style='color:#33BBFF;'>" +surface+"</b></h2>"
                "<br>Longitude: "+lng+ ""
                "<br>Latitude: "+lat+ ""
            )
        }for lat,lng ,titre,surface,prix in zip(Lat,Lng,Titre,Surface,Prix),
        {
            'icon': icons.dots.yellow,
            'lat': latitu,
            'lng': longitu,
            'infobox': (
                title+ " <b style='color:#ffcc00;'> </b>"
                "<br>Longitude: "+latitu+ ""
                "<br>Latitude: "+lat+ ""
            )
        }for latitu,longitu ,title in zip(Latitude,Longitude,Title)
        ],
        circles=[{
        'fill_color': '#FF00FF',
        'fill_opacity': 0.2,
        'center': {
            'lat': 46.160329,
            'lng': -1.151139
        },
        'radius': 1300,
        'infobox': "Centre ville"
    }],
        fit_markers_to_bounds = True
        # maptype = "TERRAIN",
        # zoom="5"

    )

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

你有什么看起来是错误的变量,但更根本的是你试图建立两个列表是一个单一的理解。你需要构建两个理解:

markers=[
    {
        'icon': icons.dots.red,
        'title': prix,
        'lat': lat,
        'lng': lng,
        'infobox': (
            titre+ " <b style='color:#ffcc00;'> " +prix+ "</b>"
            "<h3>surface:<b style='color:#33BBFF;'>" +surface+"</b></h2>"
            "<br>Longitude: "+lng+ ""
            "<br>Latitude: "+lat+ ""
        )
    } for lat,lng ,titre,surface,prix in zip(Lat,Lng,Titre,Surface,Prix)
] + [
    {
        'icon': icons.dots.yellow,
        'lat': latitu,
        'lng': longitu,
        'infobox': (
            title+ " <b style='color:#ffcc00;'> </b>"
            "<br>Longitude: "+latitu+ ""
            "<br>Latitude: "+lat+ ""
        )
    } for latitu,longitu ,title in zip(Latitude,Longitude,Title)
],

根本性变化是] + [大约一半。