首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么我的代码中有KeyError main?

为什么我的代码中有KeyError main?
EN

Stack Overflow用户
提问于 2019-07-18 17:36:03
回答 3查看 504关注 0票数 2

我已经尝试了很多方法来解决这个问题,但每次我都遇到同样的问题。main上的city_weather中的键错误

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import requests
from django.shortcuts import render
from .models import City
from .forms import CityForm

# Create your views here.

def weather(request):

    url = 'http://api.openweathermap.org/data/2.5/weather?q={}&units=imperial&appid=f5f13c3f6d997b396795738b674115cc'
    city = 'Delhi'


    if request.method == 'POST':
        form = CityForm(request.POST)
        form.save()

    form = CityForm()

    cities = City.objects.all()

    weather_data = []

    for city in cities:

        r = requests.get(url.format(city)).json()
        #print(r.text)
        city_weather = {
            'city': city.name,
            'temperature': r['main']['temp'],
            'description': r['weather'][0]['description'],
            'icon':  r['weather'][0]['icon']

        weather_data.append(city_weather)

    print(weather_data)

    #print(city_weather)
    context = {'weather_data': weather_data, 'form': form}
    return render(request, 'weather.html', context)

我预计不会出现错误,但我得到了‘温度’:r 'main‘,KeyError:’main‘

EN

回答 3

Stack Overflow用户

发布于 2022-01-29 02:35:18

您需要转到管理页面并删除您之前创建的城市,因为您定义了未定义的城市名称,因此会收到一个错误。

票数 1
EN

Stack Overflow用户

发布于 2019-07-19 09:33:56

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
city_weather = {
            'city': city.name,
            'temperature': r['main']['temp'],
            'description': r['weather'][0]['description'],
            'icon':  r['weather'][0]['icon']
               } #you need to close the dictionary here

    weather_data.append(city_weather)
票数 0
EN

Stack Overflow用户

发布于 2019-07-19 09:47:23

每当您看到KeyError时,其语义含义就是找不到正在查找的键。只需包含字典"city_weather“的右花括号(‘}’

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57099942

复制
相关文章
Python 为什么没有 main 函数?为什么我不推荐写 main 函数?
毫无疑问 Python 中没有所谓的 main 入口函数,但是网上经常看到一些文章提“Python 的 main 函数”、“建议写 main 函数”……
Python猫
2020/06/04
2.5K0
uCPE/vCPE与网络:你中有我,我中有你
IDC认为,企业对SD-WAN的接受度和采用率会越来越广泛。随着虚拟化,云管理、SDN等新兴技术在整个企业网络中的不断发展,uCPE/vCPE将从这种模式转变中受益,并受到越来越多的关注。本文先简要介绍uCPE/vCPE,然后会重点阐述uCPE/vCPE和网络扯不断的关系。
SDNLAB
2019/01/08
1.3K0
为什么是int main()而不是void main()
这是基于我们学校老师一直使用void main(),而发的感慨,大一学习C语言时,我就在想,老师上课演示的为什么一直用void main(),而不是int main()呢?不为了偷懒?还是习惯性的语句呢?在查阅了部分大牛的博客,翻阅了C Primer Plus和C++ Primer Plus这两本圣经级别的书本之后,得出以下结论(有一部分是别人的结论,属于半转载),可能不太严谨,请多多包涵。
对弈
2019/09/04
3.7K0
我为什么晚上写代码?
摘要:作为一个有点追求的程序员,应该每天练习写代码,而夜深人静的时候,似乎比较合适,至少对我来说是这样。
Fundebug
2019/12/31
6120
pymysql KeyError:25
没有找到出错的具体原因,所以只能更换一个引擎,在这里找到了一个临时方案: 安装新的引擎:
py3study
2020/01/02
1.3K0
为什么Python没有main函数?
众所周知,Python中没有所谓的main函数,但是网上经常有文章提到“ Python的main函数”和“建议编写main函数”。
AI科技大本营
2020/07/24
1.8K0
为什么我写不出面向对象的代码
举个栗子,比如之前项目组做的付款业务,这里面包含了A付款,B付款,C付款,D付款等模块。
Lvshen
2022/12/05
1.2K0
为什么我写不出面向对象的代码
为什么 main 方法是 public static void ?
main 方法是我们学习Java编程语言时知道的第一个方法,你是否曾经想过为什么 main 方法是 public、static、void 的。当然,很多人首先学的是C和C++,但是在Java中main方法与前者有些细微的不同,它不会返回任何值,为什么 main 方法是 public、static、void,这篇文章尝试去找到一些答案。
全栈程序员站长
2022/08/23
3410
浅谈main(),int main(),void main(),int main(void)四者之间的区别
1,main():相当于 int main() 2,int main():int 是main() 函数的返回类型。这表明main()函数返回的值是整数且授受任何数量的参数。 3,void main():void为空类型。这表明main函数无返回值且授受任何数量的参数。 4,int main(void):main不接受任何参数且返回的值是整数。 另外请注意: main()为老式的写法。返回类型int在新型的编译器重不可以省略,否则会有警告; void main()为老式的写法。6.0及之前的VC使用这样的写法
Zoctopus
2018/06/04
1K0
KeyError: Spider not found 5种出错的情况
KeyError: 'Spider not found:name一样,为何还是找不到spider 呢。 往下看看,总有一个是你要的答案。
李玺
2021/11/22
1.7K0
KeyError: Spider not found 5种出错的情况
为什么if-else会影响我的代码的复杂度
我之前写了一篇文章《我用规则引擎消除if语句,提高了代码的可扩展性》,这篇文章我想阐述的观点是复杂的if语句可能会影响代码的阅读和代码的扩展性,会将非业务的条件逻辑与业务逻辑混合在一起。时间长了代码会越来越臃肿,因此这种情况下我推荐使用一些设计模式例如策略模式,责任链模式等去优化if语句带来的问题,文中我发现使用规则引擎也能实现类似效果,因此介绍了怎么使用规则引擎Easy Rules去取代if语句。
Lvshen
2022/05/05
1.5K0
为什么if-else会影响我的代码的复杂度
“我为什么反对AI论文强制开源代码”
NeurIPS 2020官方近日发布了一份开源指南。从2019开始,NeurIPS就“强烈建议”提交论文代码,不过仍非强制。
量子位
2020/04/16
1.1K0
“我为什么反对AI论文强制开源代码”
低代码指南100问:13为什么「我不」需要低代码?
即使所有人都认同上述“为什么要用低代码”的理由,但仍不时会有试水者跳出来,给大家细数“为什么我不需要低代码”。实践出真知没错,而且大部分质疑背后也都有一定道理;但在我看来,更多的可能是主观或无意识的偏见。这里我列了一些对低代码的常见质疑和我个人的看法,期望能帮助大家看到一个更全面和客观的低代码。
LCHub低代码社区
2023/06/11
2460
低代码指南100问:13为什么「我不」需要低代码?
为什么我的BERT不行?
这节只列举问题,思路放下一章。这里是给大家去定位问题的思路,通过这些渠道能发现一些问题,而不是对问题束手无策了。
lyhue1991
2023/02/23
1.3K0
为什么我的BERT不行?
IDEA运行main方法,为什么要编译整个工程?
每次在IDEA中导入工程后,想写一个类去测试一些数据,有时候只是写一个main方法进行简单的输出;
JQ实验室
2022/10/21
1.3K0
pymysql return self._by_id[id] KeyError: 255
错误日志 (joyo) E:\git_stores\blog>python manage.py migrate E:\py_envs\joyo\lib\site-packages\daphne\server.py:15: UserWarning: Something has already installed a non-asyncio Twisted reactor. Attempting to uninstall it; you can fix this warning by importing dap
卓越笔记
2023/03/01
4360
pymysql  return self._by_id[id]  KeyError: 255
我为什么读博,以及我为什么不读博?
研究生三年后,毕业生都做出了自己的选择,一部分人就业,一部分人选择继续深造,不同的路径,同样的都是在探索自己的生涯之路。很多人都会比较一下毕业后直接工作和读博这三年内到底有何不同?下面就彻底晒晒。
用户3578099
2020/11/30
1.1K0
我为什么读博,以及我为什么不读博?
我说我为什么抽不到SSR,原来是这段代码在作祟...
元素被选中的机会并不相等,而是由相对“权重”(或概率)被选中的,是偏心的,这就是加权随机。
机智的程序员小熊
2023/03/02
1.3K0
我说我为什么抽不到SSR,原来是这段代码在作祟...
pymysql connect 连接mysql 报错keyerror255
pymysql connect 连接mysql 报错keyerror255;最近困了我两个多月的一个难题,搜这个标题进来的都可以看到搜索引擎提供了n^2篇解决方法的文章,那为什么还会困住我这么久呢?我不会百度吗?NO NO NO!!最大的问题是我的执行电脑和数据存储电脑不是同一台电脑!!
诡途
2020/10/16
1.7K0
点击加载更多

相似问题

运行Main时的KeyError

119

图形用户界面部分工作,为什么我得到"y = x["main"] KeyError:'main‘python“

20

为什么我得到以下代码的KeyError:"0“?

24

KeyError:'prefs_main_template‘

17

为什么我的代码总是抛出一个KeyError?

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文