关于if "name" in w:这一段代码
老师您好,在编写“明日天气预报”这一节,我对if "name" in w:这段代码不是很能理解
我目前的理解是:这段代码的意思是判断w里是否存在“name”这个key,
如果存在,则继续下一步
如果不存在,则运行else
而在前一步n = input('请输入您要查询的城市:')
w = get_weather(n) 中
如果这里用户输入的n没在原始的数据库中,这里的w就无法生成,所以也不存在“name”这个key了
老师您看我这样理解可以么
第二个问题是,函数代码中的return{} 为什么不能省略呢?
我刚才省略了试了试,如果输入的城市名没在原始数据库就会报错
麻烦老师讲解以下原理
正在回答 回答被采纳积分+1
同学,你好。
1、if条件判断中不能直接判断city的,city in w判断的是键在不在w字典中,而city是对应的是字典w的value值,因此是不行的,需要判断的是"name" in w,即"name"这个key在不在字典w中
2、return {}是将返回的{}空字典赋值给w,print("未找到{}的天气数据".format(n))中的{}是占位,使用format格式化,将n的值(n是输入的城市)传递给前边的中括号位置
3、若函数值返回None,即w的值为None,在执行if条件判断时就会报错,并不会执行到else语句
4、return:在函数中,return是将函数的结果值进行返回,函数运行结束。在调用时需要定义变量用于接收结果,再进行打印。
print:是调用函数时,会直接执行print语句进行输出
5、同学的代码修改是可以的。
如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~
- 参与学习 人
- 提交作业 2727 份
- 解答问题 8160 个
想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星