欢迎光临散文网 会员登陆 & 注册

Effective python读书笔记——不用for(while)~else模块

2021-11-14 06:45 作者:与时代脱轨的级数  | 我要投稿

#对于for else,正常循环完else会执行,有种and的感觉


#性质:

for x in []:

    print('never run')

else:

    print('for else block')

#空序列做循环,直接执行else


while False:

    print('run?')

else:

    print('no run')

#直接false退出循环,也会执行else


#判断两数是否互质:

a,b=4,9

for i in range(2,min(a,b)+1):

    print(f'text {i}')

    if a%i==0 and b%i==0:

        print('not coprime')

        break

else:

    print('coprime')


#改变写法,不用不表示‘else’的for else用法


#辅助函数法

def comprime(a,b):

    for i in range(2,min(a,b)+1):

        if a%i==0 and b%i==0:

            return False

    return True


#变量记录法

def comprime_with_variate(a,b):

    whether_comprime=True

    for i in range(2,min(a,b)+1):

        if a%i==0 and b%i==0:

            whether_comprime=False

            break

    return whether_comprime


print(comprime(a,b))

print(comprime_with_variate(a,b))


运行结果


Effective python读书笔记——不用for(while)~else模块的评论 (共 条)

分享到微博请遵守国家法律