找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1903|回复: 2

[求助] 求大神来看下区别

2

主题

3

帖子

3

积分

贫民

积分
3
weixiang1120 发表于 2019-11-17 23:35:06 | 显示全部楼层 |阅读模式
本帖最后由 weixiang1120 于 2019-11-17 23:37 编辑

复制代码
代码1
from pygal_maps_world.maps import COUNTRIES
def get_country_code(country_name):
for code,name in COUNTRIES.items():
        if name==country_name:
            return code
        else:
            return None
代码2
from pygal_maps_world.maps import COUNTRIES
def get_country_code(country_name):
    for code,name in COUNTRIES.items():
        if name==country_name:
            return code
     return None
请问这两个代码有什么不同 有大神可以解释一下不同在哪里吗?
回复

使用道具 举报

0

主题

9

帖子

9

积分

贫民

积分
9
ll104567i 发表于 2019-11-18 18:02:33 | 显示全部楼层
如果下面的那个缩进跟for是对齐的话,我觉得下面那个是正确的。 因为你的目的是遍历所有的,如果都没有才返回None,下面的是循环结束以后还没有if到,所以会返回None,比较符合要求。而上面的那个只是在判断第一个的时候,如果第一个是,那就返回结果,如果第一个不是的话,那就执行了else,也就是说会直接reutrn None。不会再去进行下面的循环。  不知道你是不是这个意思。
回复 支持 1 反对 0

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2019-11-18 18:17:35 | 显示全部楼层
本帖最后由 sheeboard 于 2019-11-18 18:26 编辑

下面那个正确。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表