成员身份运算,流程控制
一:成员运算
1.判断某个个体在不在某个群体内
关键字:in(在) not in(不在)
not 取反
二:身份运算
判断两个数据 值和内存地址是否相等
符号: ==(只判断值) is(判断内存地址)
s1 = ['long', 'kevin', 'tony', 'jackson']
s2 = ['long', 'kevin', 'tony', 'jackson']
print(s1 == s2) # True
# print(id(s1),id(s2))
print(s1 is s2) # False
"""
值相等内存地址不一定相等
内存地址相等值一定相等
"""
三:流程控制
流程控制即控制事物的执行流程
任何使用执行流程只有三种情况
1.顺序结构
自上而下依次运行
# 我们之前编写的代码就是顺序结构
2.分支结构
在运行过程中根据条件的不同可能会执行不同的流程
3.循环结构
在运行过程中有些代码需要反复执行
四:分支结构
1.单if分支结构
if 条件:
单if分支情况
条件成立之后执行的子代码块
- 条件是什么:根据条件的结果,判断条件的结果,是否可行,能不能做,就是看这个条件最后转为的(布尔值)是:
True
False
那么会发现这里面三行代码,不会像以前那样,只要写了就会执行,代码现在会有时候执行,有时候不执行了,那么这个就叫分支了。
执行需要根据条件来判断了,单if的判断情况。
age = 36
if age < 28: # 我现在年龄是36岁小于<28吗? 不小于。所以运行结果是:False,就是错的,那么下面的结果就会不执行了。
条件判断,条件都会转成布尔值,从而决定子代码是否执行,
2.if与else连用
if 条件:
条件成立之后执行的子代码块
else:
条件不成立的情况下执行的子代码块
ps:if与else连用 两者的子代码永远只会执行一个
- 1.条件都会转成布尔值 从而决定子代码是否执行
在python中 使用缩进来表示代码的从属关系
并不是所有的代码都可以拥有子代码
同属于某个代码的多行子代码 必须要保持相同的缩进量
在python中推荐使用四个空格来缩进
ps:小技巧 上一行代码的结尾如果是冒号 那么下一行代码必缩进
3.if elif else三者连用
else,否则
if 条件1:
条件1成立之后执行的子代码块
elif 条件2:
条件1不成立 条件2成立之后执行的子代码块
elif 条件3:
条件1和2都不成立 条件3成立之后执行的子代码块
else:
上述条件都不成立 执行的子代码块
ps:elif可以有多个
三者连用也是只会其中一个子代码块 - if和else的子代码两者连用永远只会执行一个
- else不能单独使用,判断一定要if先起手
- if后面的条件是可以多个的,
- 条件的表现形式可以是多样的单条件 逻辑运算符 数据
五:if判断之嵌套
俄罗斯套娃)
六:while循环
while 条件:
条件成立之后循环执行的子代码块
七:while+break
while + break
- break结束本层循环
八:break本层的含义
九:全局标志位
全局标志位所以(while)循环的条件,全都由一个变量来控制,那以后在任何一个位置只要动了这个变量,那么所以flag都会改,这叫全局标志位。
- eg:用户输入只能输入三次,如果输入三次正确直接退出循环
- eg:大循环套小循环