语句:由表达式组装构成
表达式:由数据+运算符构成
运算符分类
① 计算运算符:加(+)、减(-)、乘(*)、除(/)、取余数(%)、取商(//)、求幂(**)
② 比较运算符:==、>、<、>=、<=、!=
③ 赋值运算符:=、+=、 -=
④ 逻辑运算符: and、 or、not
⑤ 成员运算符:in
计算运算符:
num1 = 10
num2 = 3
num3 = num1 + num2
print("num3等于:", num3)
num4 = num1 - num2
print("num4等于:", num4)
num5 = num1 / num2
print("num5等于:", num5)
num6 = num1 % num2
print("num6等于:", num6)
num7 = num1 // num2
print("num7等于:", num7)
num8= 2**10
print("num8等于:", num8)
print(num8)
#输出:
num3等于: 13
num4等于: 7
num5等于: 3.3333333333333335
num6等于: 1
num7等于: 3
num8等于: 1024
#判断奇偶数
x = 23
print(x % 2 == 0)
y = 24
print(y % 2 == 0)
#输出:
False
True
比较运算符:
比较运算符,输出结果输出为bool值(False、True)
==:判断是否等于
>:判断是否大于
<:判断是否小于
>=:判断是否大于等于
<=:判断是否小于等于
!=:判断是否不等于
# ==
num1 = 10
num2 = 10
result1 = num1 == num2
print(result1) # 输出:True
# >
num3 = 5
num4 = 10
result2 = num3 > num4
print(result2) # 输出:False
# <
num5 = 3
num6 = 8
result3 = num5 < num6
print(result3) # 输出:True
# >=
num7 = 10
num8 = 10
result4 = num7 >= num8
print(result4) # 输出:True
# 小于等于:<=
num9 = 5
num10 = 10
result5 = num9 <= num10
print(result5) # 输出:True
# 不等于:!=
str1 = "Hello"
str2 = "World"
result6 = str1 != str2
print(result6) # 输出:True
赋值运算符:
= :对变量进行赋值
+=:自加:自己加一个新的值,取代原始
-+:自减:自己减一个新的值,取代原始的值
--------->>
ps:
-=、+=:也成增强运算符
-=、+=:写的时候两个符号直接不能有空格,否则会报错
a = 10 #给变量a赋值为10
a += 2 #等效于:a = a + 2
print(a)
#输出:
12
'''
自加场景:
例如一个游戏程序中,一个账号的经验值增加,就可以用自加的方式
'''
experience = 10 #初始经验值为10
print("每打一个小妖,增加10个经验值")
experience += 10
print("每打一个大妖,增加20个经验值")
experience += 20
print(experience)
#输出:
每打一个小妖,增加10个经验值
每打一个大妖,增加20个经验值
40
'''
自减场景:
例如一个游戏程序中,一个账号的经验值增加,就可以用自加的方式
'''
blood = 100
print("当前血值:",blood)
print("收到轻微攻击,掉血10")
blood -= 10
print("当前血值:",blood)
print("收到严重攻击,掉血20")
blood -= 20
print("当前血值:",blood)
#输出:
当前血值: 100
收到轻微攻击,掉血10
当前血值: 90
收到严重攻击,掉血20
当前血值: 70
逻辑运算符:
and:两个条件都必须满足,才会返回True,否则返回False;
特点: 有一个条件为假,则结果为假
or: 两个条件只要有一个满足,就会返回True,否则返回False
特点: 有一个条件为真,则结果为真
not:对一个条件取反,如果条件为True,返回False
特点:如果条件为False,返回True
and和or示例:
'''
and、or的使用:
例如:根据考试分数情况,给小朋友买礼物
满分为120,110
'''
Chinese_score = 120
Math_score = 110
#第一次谈判:两科同时满分给予奖励:
print(Chinese_score == 120 and Math_score == 110)
#第二次谈判:两科只要有一科满分给予奖励:
print(Chinese_score == 120 or Math_score == 90)
#输出:
True
True
#and使用:范围判断,面试年龄20~35
age = 23
age1 = 40
print(age > 20 and age < 35)
print(age1 > 20 and age1 < 35)
print(20 < age < 35) #简化写法
#输出:
True
False
True
#and使用:登陆判断:
user = "root"
pwd = "123"
username = input("请输入用户名:") #输入root
password = input("请输入密码:") #输入123
print(user == username and pwd == password)
#输出:True
username = input("请输入用户名:") #输入root
password = input("请输入密码:") #输入12345
print(user == username and pwd == password)
#输出:False
#条件嵌套:
Chinese_score = 120
Math_score = 110
total = 500
#总成绩大于600分,或者语文和熟悉同时满分,则进行奖励
print(total > 600 or (Chinese_score == 120 and Math_score == 110))
#输出:True
not示例:
# 使用not运算符对布尔值取反
value1 = True
result1 = not value1
print(result1) # 输出:False
value2 = False
result2 = not value2
print(result2) # 输出:True
# 使用not运算符对表达式的结果取反
num1 = 10
num2 = 5
result3 = not (num1 > num2)
print(result3) # 输出:False
result4 = not (num1 < num2)
print(result4) # 输出:True
各运算符的优先级
比较运算符 > 逻辑运算符
当比较运算符、逻辑运算符同时出现时:
优先级:比较运算符 > 逻辑运算符
not > and > or
not 、and 、 or 同时出现时
优先级: not > and > or
算数 > 比较 > 逻辑
当算数运算符、比较运算符、 逻辑运算符同时出现时:
优先级为:算数 > 比较 > 逻辑
成员运算符:
in:
用于检查一个值是否包含在某个集合中例如字符串、列表、元组、集合或字典的键中。
如果包含,则返回True,否则返回False。
# 使用in运算符检查子串是否存在于字符串中
str1 = 'Hello, World!'
result1 = 'Hello' in str1
print(result1) # 输出:True
result2 = 'Python' in str1
print(result2) # 输出:False