欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python入门05——基本运算符补充,流程控制之if...else

程序员文章站 2022-07-08 18:08:17
Python入门05——基本运算符补充,流程控制之if…else文章目录基本运算符1、赋值运算符2、逻辑运算符布尔值流程控制之if...else基本运算符1、赋值运算符age = 18(1) 增量赋值age += 1 # age = age +1#print(age)age -= 10 # age = age - 10(2) 交叉赋值x = 111y = 222# temp = x# x = y# y = tempx,y = y,xprint(x)print(y)...

Python入门05——基本运算符补充,流程控制之if…else

基本运算符

1、赋值运算符

age = 18

(1) 增量赋值

age += 1 # age = age +1
#print(age)

age -= 10 # age = age - 10

(2) 交叉赋值

x = 111
y = 222

# temp = x
# x = y
# y = temp

x,y = y,x
print(x)
print(y)

(3) 链式赋值

x = 10
y = x
z = y
x = y = z = 10
print(id(x),id(y),id(z))

(4) 解压赋值

salaries = [111,222,333,444,555]
# mon0 = salaries[0]
# mon1 = salaries[1]
# mon2 = salaries[2]
# mon3 = salaries[3]
# mon4 = salaries[4]

mon0,mon1,mon2,mon3,mon4 = salaries

print(mon0)
print(mon1)
print(mon2)
print(mon3)
print(mon4)

注意:变量名与值的个数必须一一对应
mon0,mon1,mon2,mon3,mon4,mon5 = salaries #多一个变量名不行
mon0,mon1,mon2,mon3 = salaries #少一个变量名不行

salaries = [111,222,333,444,555]
mon0,mon1,*_ = salaries
print(mon0)
print(mon1)
print(_)

*_,x,y = salaries
print(x,y)
print(_)

x,*_,y,z = salaries
print(x)
print(y)
print(z)

_,*midlle,_=salaries
print(midlle)

dic={'k1':111,'k2':222,'k3':3333}
x,y,z=dic
print(x,y,z)
print(dic[x],dic[y],dic[z])

x, y, z,a,b = "hello"
print(x)

2、逻辑运算符

作用:用来连接多个条件

(1) not 条件:对条件的结果取反

print(not 10 > 3)
print(not False)
print(not 0)

(2) 条件1 and 条件2:连接左右两个条件,两个条件必须都为True,最终结果就为True

print(True and 10 > 3)
print(True and 10 == 3)

(3) 条件1 or 条件2:连接左右两个条件,两个条件只要有一个为True,最终结果就为True

print(False or 10 == 3)
print(True or 10 == 3)

ps:偷懒原则 =》 短路运算

(4) 优先级:not > and > or,推荐用括号取标识优先级

res = (3 > 4 and 4 > 3) or (not (1 == 3 and 'x' == 'x')) or 3 > 3
print(res)

res = 3 > 4 and 4 > 3 or not 1 == 3 and 'x' == 'x' or 3 > 3
print(res)
res = (3 > 4 and 4 > 3) or (not 1 == 3 and 'x' == 'x') or 3 > 3

res = 3 > 4 and 4 > 3 or not 1 == 3 and 'x' != 'x' or 3 > 3
print(res)

print(10 and 0)
print(10 and False)
print(10 or False)

布尔值

条件:只要能得到True或False两种值的东西都能当作条件
例如:
1、显式的布尔值: 表面上看直接是True或False
(1) 比较运算的结果

print(10 > 3)
print(10 == 3)

(2) 变量值直接就是True或False

tag = True

2、隐式的布尔值: 表面上看上去是一种值,在底层会被解释器转换成True或False

0、None、空 对应的布尔值为False,其余值对应的布尔值均为True

流程控制之if…else

银行行长-------------------------汉语---------------------业务员
           接受用户输入的用户名
           接受用户输入的密码
           判断 用户输入的用户 = 正确的用户名 并且 用户输入的密码 = 正确的密码
                告诉用户登录成功
           否则:
                告诉用户账号或密码错误


银行行长-----------------------编程语言--------------------计算机
           db_name = "egon"
           db_pwd = "123"
           inp_name = input("请输入您的用户名")
           inp_pwd = input("请输入您的密码")

           判断 inp_name == db_name 并且 inp_pwd == db_pwd
                告诉用户登录成功
           否则
                告诉用户账号或密码错误

if 判断的完整语法

if 条件:
   代码1
   代码2
   代码3
   
elif 条件2:
   代码1
   代码2
   代码3
   
elif 条件3:
   代码1
   代码2
   代码3
   
else:
   代码1
   代码2
   代码3

运行原理示范

print(1111)
print(2222)
if True:
	print('if内的代码1')
	print('if内的代码2')
	print('if内的代码3')
print(3333)

语法1:

if 条件1:
	代码1
	代码2
	代码3

gender = "female"
age = 18
is_beautiful = True

if gender == "female" and 60 >= age >= 18 and is_beautiful:
	print('开始表白。。。')

print('后续代码。。。')

语法2:

if 条件1:
	代码1
	代码2
	代码3

else:
	代码1
	代码2
	代码3

gender = "female"
age = 70
is_beautiful = True

if gender == "female" and 60 >= age >= 18 and is_beautiful:
	print('开始表白。。。')
else:
	print('阿姨好,开个玩笑。。。')
print('后续代码。。。')

语法3:

if 条件1:
	代码1
	代码2
	代码3

elif:
	代码1
	代码2
	代码3

如果:成绩 >= 90 那么:优秀
如果成绩 >= 80 且 < 90, 那么:良好
如果成绩 >= 70 且 < 80, 那么:普通
其他情况:很差

score = input("请输入你的成绩:")  # score = "93"
score=int(score)
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 70:
print("普通")
else:
print("小垃圾,很差")

72552print('其他代码。。。。')

语法4:

if的嵌套
gender = "female"
age = 18
is_beautiful = True
is_successful = True

if gender == "female" and 60 >= age >= 18 and is_beautiful:
	print('开始表白。。。')
if is_beautiful:
    print('在一起')
else:
    print('再见。。。')
else:
	print('阿姨好,开个玩笑。。。')

print('后续代码。。。')

本文地址:https://blog.csdn.net/chongaiyatou/article/details/107210071