账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    python下for循环接if判断的函数执行顺序
    83
    0

    如题,程序第4行开始,for循环接if判断,之后的name=self._nic_ovs_name_pattern.search(o) 指的是if条件判断返回true才执行赋值操作吗?还是if返回False执行的呢?最后一行的return ovs_nics,是什么条件满足后返回的呢?这个函数的整体执行顺序看的不是太明白,还请指教,谢谢.

    def __extract_ovs_nic_detail(self, output):
        ovs_nics = []
        ovs_nic = {}
        for o in output.split('\n'):
            if '_uuid               : ' in o:
                ovs_nic = {}
            name = self._nic_ovs_name_pattern.search(o) 
            if not name is None:
                ovs_nic['name'] = name.group(2).strip('\"')
            mac = self._nic_ovs_mac_pattern.search(o) 
            if not mac is None:
                ovs_nic['mac'] = mac.group(2).strip('\"')
            mtu = self._nic_ovs_mtu_pattern.search(o) 
            if not mtu is None:
                ovs_nic['mtu'] = mtu.group(2)
            speed = self._nic_ovs_speed_pattern.search(o)
            if not speed is None:
                ovs_nic['speed'] = str(int(speed.group(2)) / 1000000) + 'Mb/s'
            if 'type                : ' in o:
                ovs_nics.append(ovs_nic)
        return ovs_nics
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 一芈孑の孤单 普通会员 1楼

      在Python中,for循环和if判断通常需要配合使用。if判断是for循环的入口条件,for循环则会执行一系列的代码,如果for循环中的条件为真,那么就执行if判断中的代码。但是,需要注意的是,if判断的代码并不会被执行,因为它们并不会影响for循环的执行顺序。

      但是,如果你将if判断的代码放在for循环内部,那么for循环就会在if判断之前执行。也就是说,if判断的代码会覆盖for循环的执行顺序。

      例如:

      python for i in range(5): if i == 3: print("For loop is executed first") print(i)

      在这个例子中,for循环会打印出"For loop is executed first",而if判断的代码不会被执行,因为它们并不会影响for循环的执行顺序。

      总的来说,Python中的for循环和if判断通常需要配合使用,以便正确地控制循环的执行顺序。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部