Python的运算符

发布时间 2023-11-14 18:44:05作者: Magiclala

1. 算数运算
    + - * / // %

"//"除

"%"余

a = 20
b = 3
c = a // b
d = a % b  # 20 / 3 = 6.....2
print(c)
print(d)

#运行结果
6
2

 

让用户输入一个数字. 判断是否是35的倍数

n = int(input("来个数: "))
if n % 35 == 0:
    print("是35的倍数")
else:
    print("不是35的倍数")


2. 比较运算
    > < >= <= == !=

"== " 判断左右两端是否一致

"!=" 判断不等于

a = 10
b = 20
print(a == b)
print(a != b)

#运行结果
False
True


3. 赋值运算
    =  +=, -=, *= .....

"="将右边的数赋值给左边

标准的互换操作应该如下:

a = 30
b = 40

temp = a  # 备份, 有桌子
a = b
b = temp

在Python中可以直接操作互换(仅适用于python)

a, b = b, a

原理如下:

他们本身是一个元组,先组成(b,a)元组,对元组(b ,a)进行解剖,分别赋予给a和b,一次执行可得互换结果

a, b = (b, a)
print(a)
print(b)

 

 

a += b  =>  (a = a + b)

举例:从1加到100

n = 1
sum = 0
while n <= 100:
    sum = sum + n  # sum += n
    n = n + 1      # n += 1

其中,代码可以简化表示为:

sum = sum + n  =>  sum += n
n = n + 1   => n += 1

 

4. 逻辑运算
    1. and, 并且, 左右两端同时成立. 结果才能成立
    2. or,  或者, 左右两端有一个成立. 结果就成立
    3. not, 非,   非真既假, 非假既真.

print(True and True and True and False)
print(False or True or False or False)
print( not False)

举例:模拟用户登录

username = input("用户名:")
password = input("密码:")
if username == "admin" and password == "123456":
    print("登录成功")
else:
    print("登录失败")

*当and和or以及not同时出现的时候. 最好呢. 加上括号. 不会产生歧义或者不易理解的问题

print((True and False) or (True and False) or (not True and True) or False)

如果没有括号怎么办?

print(True and False or True and False or not True and True or False)

运算顺序:

先算括号 > 再算not > 再算and  > 最后算or

 

演算过程

1、先算not,把not True变成False

print(True and False or True and False or not True and True or False)
print(True and False or True and False or False and True or False)

2、再算and,分别把True and False 、True and False 、False and True进行运算

print(True and False or True and False or False and True or False)
print(False or False or False or False)

3、最后算or

print(False or False or False or False)

结果为False

 

5. 成员运算
    in     判断xxx是否在xxxx中出现了
    not in 判断xxx是否不在xxxx中出现了

lst = [1,2,3,4,5,6]
print(3 in lst)
print(666 not in lst)

#运行结果
True
True