今天学习的是运算和分支,特别是分支,重中之重。
运算与分支
各种运算
赋值运算
用=表示,=左边必须是变量
算术运算
+、-:加、减
*:乘
/:除,完成除法,结果是小数
//:除,整除,结果是整数
%:求余,divmod函数同时得到商和余数
**:求幂,与pow函数功能相同
复合运算
+=、-=、*=、。。。
示例:a += 1等价于a = a + 1
关系运算
>、>=、<、<=、==、!=
关系表达式是有值的,符合数学逻辑值为真(True),不符合数学逻辑值为假(False)
逻辑运算
逻辑与(and):两边的表达式同时为真,结果才为真。
逻辑或(or):两边的表达式一个为真,结果就为真。
逻辑非(not):取反表达式,真变假,假变真。
使用not是为了简化表达式的书写
not经常伴随着隐式类型转换
短路原则
# 短路原则
# 逻辑与:当前面的条件为假,后面的条件无需判断
# 逻辑或:当前面的条件为真,后面的条件无需判断
a = 3 and 5
print('a =', a)
b = False and 5
print('b =', b)
c = True or 3
print('c =', c)
d = False or 5
print('d =', d)
成员运算
in、not in:判断一个值是否在另一个变量中
通常用在容器类型元素成员的判断
示例:
lt = [1, 2, 3]
print(1 in lt)
print(1 not in lt)
print(11 not in lt)
print('abc' in 'abcdefg')
print('dahua' in {'name': 'dahua', 'age': 18})
# 字典成员判断的是键
print('name' in {'name': 'dahua', 'age': 18})
按位运算(扩充)
符号 说明
& 按位与,对应的位同时为1,结果上的位值才为1
| 按位或,对应的位一个为1,结果上的位值就为1
^ 按位异或,对应的数据位相同结果为0,不同结果为1
~ 按位取反,每一位上的值0变1,1变0
<< 按位左移,左移1位相当于乘2
>> 按位右移,右移一位相当于除2
特别说明:
当表达式变得复杂时,记不住优先级和结核性可以使用小括号加以解决。
流程控制
说明:
按照程序的执行流程,可以分为三种结构:顺序结构、分支结构、循环结构
顺序结构
- 顺序结构:程序按照代码的书写顺序从上到下依次执行,没有语法。
- 代码层次:python中的代码块不是通过大括号体现的,而是通过缩进体现。
分支结构
- 格式1:适合于解决生活中的条件执行问题
if 表达式:
语句块
执行流程:当程序执行到if语句时,首先判断表达式的真假。若表达式的值为真,则执行缩进的语句块,若表达式的值为假,则跳过语句块。
- 格式2:适合于解决生活中非此即彼的问题
if 表达式:
语句块1
else:
语句块2
执行流程:当程序执行到if-else语句时,首先判断表达式的真假。若表达式的值为真,则执行语句块1,若表达式的值为假,则执行语句块2.
- 格式3:适合于解决生活中的多种选择问题
if 表达式1:
语句块1
elif 表达式2:
语句块2
elif 表达式3:
语句块3
......
else:
语句块
1.elif的个数没有限制
2.else可以没有
3.所有的语句最多执行一个
字符串操作
字符串定义
ASCII:美国信息交换标准代码
# 获取字符的ASCII
print(ord('A'))
# 将ASCII转换为字符
print(chr(97))
基本使用:拼接、提取、切片等
格式化:就是将不同的变量拼接成一个字符串
通用方案:使用%进行占位
特有方案:使用字符串的format方法
版权声明:本文为qq_40433141原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。