赋值,逻辑,运算符, 控制流程之if 判断
2024-08-31 19:51:32
赋值运算
(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
2. 隐式布尔值: 表面上是一种值, 底层会被解释器转换成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 嵌套
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('后续代码。。。')
最新文章
- js微博发布框的实现
- Arcgis Engine 切割图斑(ITool)
- swift 同步加载图片
- SQL中使用WITH AS提高性能-使用公用表表达式(CTE)简化嵌套SQL
- Android开发之WebService介绍
- passport.js
- Visual Studio2012中搭建WCF项目
- python之json
- Facebook 开源安卓版 React Native,开发者可将相同代码用于网页和 iOS 应用开发
- Moodle的qq登录版块的使用
- 左右v$datafile和v$tempfile中间file#
- USACO 3.4 Electric Fence
- Angular4 组件通讯方法大全
- BZOJ 1483: [HNOI2009]梦幻布丁 [链表启发式合并]
- HDU 6035(树形dp)
- Errors running builder &#39;Integrated External Tool Builder&#39; on project xxx
- ssh多台主机之间不用密码远程
- 【 HDU4773 】Problem of Apollonius (圆的反演)
- [BZOJ2650]积木
- Uncaught DOMException: Blocked a frame with origin ";http://localhost
热门文章
- Flask 安装和简单使用
- Qt自动生成.rc文件并配置对应属性 程序图标 版本 描述等
- Divisors (求解组合数因子个数)【唯一分解定理】
- Microsoft SQL Server Migration Assistant for MySQL(从MySQL迁移表数据到MSSQL2008R2)_3
- Spark GraphX企业运用
- IOS App破解之路一 拿到appstore上的ipa
- cb20a_c++_string类型的查找
- Python学习日志-01
- Tensorflow2 自定义数据集图片完成图片分类任务
- SpringCloud 入门(三)