语言基础篇7——Python运算符

运算符

算数运算符

# 算术运算符
# +
# -
# *
# **
# /  浮点除
# // 整数除
# %

赋值运算符

# 赋值运算符
# =
# +=
# -=
# /=  浮点除等
# //= 整数除等
# *=
# **=

关系运算符

# 关系运算符
# >
# ==
# <
# >=
# <=
# !=
# is
# is not

逻辑运算符

# 逻辑运算符
# 返回表达式的值
# and
# or
# not
# () > not > and > or

print(1 and 2)  # 2
print(0 and 2)  # 0
print(2 and 0)  # 0

print(1 or 2)  # 1
print(0 or 2)  # 2
print(2 or 0)  # 2

print(not 1)  # False
print(not 2)  # False
print(not 0)  # True
print(not '0')
print(not [])  # python判空一个not即可
# 根据表达式结果判定,如果为0,返回可以确定整个表达式真假的表达式的值

print("10" and 0)
print(0 or "10")
print(0 or True)

print(1 and 2 > 1)
print(2 > 1 and 1)
print(2 > 1 or 1)

print("" and 1)  # 特别注意
# 根据逻辑运算符返回表达式的值,如果使用关系运算符,则正好返回bool

位运算符

位运算符
# & 按位与
# | 按位或
# ~ 按位取反
# ^ 按位异或
# << 左移
# >> 右移
print(bool("123") ^ bool(""))

成员操作符

# 成员操作符
# in
# not in 

注:

  1. is用于通过比较内存地址判断两个对象是否相等,==通过比较两个对象指向的数据判断两个对象是否相等,Python中None、True、False是单例的,习惯上使用is进行判断。

  2. if not x中若x为零值,即None、False、0、“”、()、[]、{},表达式均为假,在一些场景下直接使用if not x容易导致问题

    # 部分缺失数据计算场景,函数calc_growth_rate(a, b)用于计算a相对于b的增长率,结果返回一个不带百分号的百分数,在数据中,a、b均可能为空,且a、b有可能为0。
    
    # 错误示例,a=0,b=100时的计算结果是有问题的
    def calc_growth_rate(a, b):
        if a and b and b != 0:
            return a / b * 100
        return None
        
    # 正确示例
    def calc_growth_rate(a, b):
        if a is None or not b:
            return None
        return a / b * 100
    

你可能感兴趣的:(Python,python,开发语言)