gpt4 book ai didi

python - 替换 if 语句的逻辑运算符

转载 作者:太空狗 更新时间:2023-10-29 21:01:18 24 4
gpt4 key购买 nike

以下逻辑表达式的使用是否符合 Pythonic/pep8 标准?

  1. 这个:

    x = a or b

    代替:

    if not a:
    x = b
    else:
    x = a
  2. 这个:

    x = a and b

    代替:

    if not a:
    x = a
    else:
    x = b
  3. (曲线球?)这个:

    x = x or y

    代替:

    if not x:
    x = y

最佳答案

PEP 8与您使用逻辑运算符的方式无关。

假设使用逻辑运算符而不是条件运算符的动机是简洁,那么使用三元运算符可以更好地完成:

  1. x = a if a else b 而不是 x = a or b

  2. x = b if a else a 而不是 x = a and b

  3. x = x if x else yif not x: x = y 而不是 x = x or y

但是没有人禁止您也使用其他版本。都是一米的个人意见。引入三元运算符背后的动机是避免使用 andor 运算符(参见 PEP 308)来实现相同效果的容易出错的尝试。它们还在列表推导中启用奇特的东西,以及其他一些东西。

引入它们并不是为了取代复杂的 if 语句,而是作为 pythonic 三元运算符:x if condition else y

关于python - 替换 if 语句的逻辑运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18299868/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com