首页 > 解决方案 > 使用 Python、Flask、HTML 时出现 NSException 错误

问题描述

所以我做了一个网站来输出nba比赛的预测。我目前有一本字典,其中所有的团队徽标路径作为字典中的键值,并以赢得比赛的百分比作为值。名为 projec_d 的字典如下所示:

{
 'static/Portland Trail Blazers.png': '0.20%',
 'static/Milwaukee Bucks.png': '99.80%', 
 'static/New Orleans Pelicans.png': '36.40%', 
 'static/Phoenix Suns.png': '63.60%'
}

在我的 app.py 脚本中,使用这个字典的代码是:

return render_template('home.html', projec_d=projec_d)

home.html 文件的代码现在应该只输出徽标和百分比是这样的:

 {% for item in projec_d.items() %}
      <h3> {{ item }} </h3>
 {% endfor %}

我也试过:

 {% for key in project_d.keys() %}
      <img src="{{ key }}" alt="">
      <h3> {{ project_d[key] }} </h3>
 {% endfor %}

似乎没有一个工作。错误信息很奇怪。它比我附上的照片长,这是错误:NSException 错误消息

标签: pythonhtmlflaskjinja2nsexception

解决方案


您正在使用徽标的路径作为百分比的键。更好的方法是列出字典:

teams = [
    {
        'logo': 'path/to/logo.png',
        'percentage': 53.5%
    },
    {
        'logo': 'path/to/logo2.png',
        'percentage': 25.5%
    }
]

您可以像这样访问这些项目:

{% for team in teams %}
{{ team['logo'] }}
{{ team['percentage'] }}
{% endfor %}

推荐阅读