day03-运算符、流程控制 1、类型转化 str() 将整型、浮点转化为字符串 int() 只能转化整型的字符串 float() 将字符串转化为浮点 【注】通过input输入进来的都是字符串 其实,进入进出python的流都是字符串? list() 将一个元组转化为列表 tuple() 将一个列表转化为元组 dict() 将元组和列表的复杂形势转为字典 lt = [('name', 'goudan'), ('age', 18), ('height', 175)] dic1 = dict(lt) set() 将列表或者元组转化为集合 应用于列表的去重 2、运算符 算术运算符 + - * / 得到的是浮点 % 取余 对5取余,得到的有0-4 对2取余,可以判断奇偶性 对10取余,可以得到个位数 ** 求幂 a**b 求a的b次方 // 求商 100//33 3 赋值运算符 = 【注】等号左边必须是变量 复合运算符 += -= *= /= %= **= //= 比较运算符 > >= < <= == != 由变量、运算符、常量组成的式子称之为表达式 由比较运算符得到的表达式是有值的,值就是布尔类型 一个True 一个False 逻辑运算符(双目运算符) 与(and) 或(or) 非(not) 整个表达式的值最终得到也是两种,True和False 逻辑与 表达式1 and 表达式2 整个表达式的值 真 真 真 真 假 假 假 真 假 假 假 假 只要有一个表达式是假的,那么整个表达式就是假的 print(80 < a < 200) print((a > 80) and (a < 200)) 逻辑或 表达式1 or 表达式2 整个表达式的值 真 真 真 真 假 真 假 真 真 假 假 假 只要有一个表达式是真的,那么整个表达式就是真的 逻辑非 not 表达式 整个表达式的值 真 假 假 真 成员运算符 in not in 用在列表、元组、集合、字典的判断中 如果是字典,是按照键进行查找,键是否存在 存在返回True 不存在返回False 优先级 优先级高的添加小括号即可 位运算符(了解) & 按位与 | 按位或 ^ 按位异或 ~ 按位取反 << 左移 >> 右移 3、流程控制 代码的执行流程是从上往下一句一句接着执行 if (分支结构) 第一种结构 if 表达式: 语句块 执行流程:当走到if语句的时候,会判断表达式是否为真,如果为真,执行语句块,如果为假,跳过这个结构 【注】表达式后面有个冒号,必须要加上 【注】语句块前面都有缩进,缩进是4个空格,必须是空格 pass 没有任何意义,就是占位置,如果现在什么也不写,先写个pass,后续再加相应的功能。 真假判断 关系表达式 逻辑表达式 表达式: 空字符串、空列表、空元组、空字典、None、0 数值:非0为真,0为假 交换两个变量的值 使用中间变量 使用元组或者列表 第二种结构 if 表达式: 语句块1 else: 语句块2 【注】else后面也有冒号,else下面的语句块也得注意缩进 执行流程:判断表达式是否为真,如果为真,执行语句块1,如果为假,执行语句块2,语句块1和语句块2有且仅有一个被执行 第三种结构 if 表达式1: 语句块1 elif 表达式2: 语句块2 elif 表达式3: 语句块3 else: 语句块4 【注】elif无限加,这里两个为例 执行流程:首先判断表达式1是否为真,为真,执行语句块1,退出整个结构,为假,往下接着老流程判断 x^2 + 10 x<0 y = 100x + 5 0<=x<=5 x^3 x>5 【注】if结构可以嵌套if结构 看用户登录例子 while (循环结构) 重复的来做某一件事情,就是循环 格式: while 表达式: 循环体 执行流程:当程序执行到while语句时,判断表达式是否为真,如果为真,执行循环体,再次判断表达式是否为真,如果为真,继续执行循环体,然后再次判断是否为真,直到表达式为假循环结束 break 终止循环,跳出循环,在循环中只要碰到break关键字,立马结束整个循环 continue 在循环中只要碰到continue,那么continue下面的循环体不在执行,直接进入下一次循环 【注】使用continue要注意退出条件,否则很容易进入死循环 for in (循环结构)