第4节 赋值,逻辑,运算符, 控制流程之if 判断

赋值,逻辑,运算符, 控制流程之if 判断

赋值运算

(1). 增量运算

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

age -= 10  # age = age - 10

(2).交叉赋值

x = 111
y = 222

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

python 中的交叉赋值
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)

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

*_号收取多余的值, _会返回一个列表
保留前 n个
salaries = [111, 222, 333, 444, 555]
mon0,mon1,*_=salaries
print(mon0)
print(mon1)
print(_)

保留后 n个
*_,x,y=salaries
print(x,y)
print(_)

取两边  
x,*_,y,z=salaries
print(x)
print(y)
print(z)

字典解压

字典解压后得到key, 跟列表一样的操作
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)

逻辑运算
一, 只要能得到True 或 False 两种值的东西都能当做条件

例:

  1. 显式布尔值: 表面就直接是True 或 False

(1). 比较运算的结果
print(10>3)
print(10==3)

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

tag= True

msg= False

  1. 隐式布尔值: 表面上是一种值, 底层会被解释器转换成True 或 False

0.None.空布尔值为False, 其余值对应的布尔值均转为TRue
10
3.1
“”
[]
{“k1”:222}
None
二. 逻辑运算符: 用来连接多个条件
(1) , not 条件 : 对条件的结果取反

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

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

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)

偷懒原则—> 即短路原则

and : 其中一个不成立立马终止判断, 返回False

or : 其中一个成立立马终止判断, 返回True

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

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

流程控制之 if 判断

if 判断的完整语法

if 条件1:
    代码1
    代码2
    代码3
    ...
elif 条件2:
    代码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

else:
  代码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("小垃圾,很差")

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

语法4
if 的嵌套

if  条件:
	if 条件:
		代码...
		...
	else:
		...
		
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('后续代码。。。')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值