成员、身份运算符、流程控制、分支结构、if嵌套、循环结构.....

发布时间 2023-07-17 16:00:19作者: 毓见

成员运算符

1. 什么是成员运算符
# 就是查看某个个体是不是在某个群体内

关键字:in(在)  not in(不在)
names_list = ['kevin', 'jack', 'tank', 'tony']
print('kevin' in names_list)  # True  False
print('aa' in names_list)
print('bb' not in names_list)

print('hello' in 'hellworld')
print('ke' in 'kevin')

print('kevin' in {'username': 'kevin', 'age': 18})  # False
print('username' in {'username': 'kevin', 'age': 18})  # False

'''字段暴露给外界的是K'''

身份运算符

# 比较两个值是否相等
关键字:==(比较的是值是否相等) 	is(比较的是内存编号是否相等)
s1 = ['kevin', 'tank', 'jack']
s2 = ['kevin', 'tank', 'jack']

print(s1 == s2)  # True
# is比较的是id
print(id(s1))
print(id(s2))

print(s1 is s2)  # False

"""
值相等的内存地址不一定相等
内存地址相等的值一定相等
"""

流程控制

# 什么是流程控制?
控制事物的执行流程

# 流程控制的分类:任何的事物执行流程都只有这三种
1. 顺序结构
	# 自上而下依次执行,我们前面写的代码都是顺序执行的
2. 分支结构
	# 根据不同的条件执行不同的分支
3. 循环结构
	# 言外之意就是重复执行
    
'''流程图:软件工程这门课就是教你如何画流程图'''
# 流程图是有专门的符号
'''画流程图可以帮助你梳理复杂的业务逻辑'''

4. 画流程图的软件:
    Visio processon

分支结构

注意事项:
	1、条件都要转为布尔类型判断,根据条件的成立与否,决定是否要执行代码块
    2、 条件成立之后,需要执行子代码块,子代码块是要缩进的,
    	# 一把情况下推荐使用4个空格作为缩进
    3、 只要遇到冒号,下面一行代码必缩进
    4、当你的子代码块只有一行的时候,可以不换行,直接写在冒号后面
    5、 同属于一个代码块的子代码块,缩进量要一样
    6、 不是所有的代码都有子代码块

1. 单分支结构
	"""
		语法格式:
			if 条件:
				条件成立之后要执行的代码块
	"""
	eg:年龄小于26,我们称小姐姐
    age = 18
    if age < 26:
        print('小姐姐好啊!给个微信呗')
    
2. 双分支结构
	"""
		语法格式:
			if 条件:
				条件成立之后执行的代码块
			else:
				条件不成立执行的代码块
	"""
	eg:如果年龄小于26,称小姐姐,否则,认错人了...
     age = 18
     if age < 26:
        print('小姐姐')
     else:
        print('认错人了')
        
    # 双分支结构有且只能执行一个分支
  

3. 多分支结构
	"""
		语法格式:
			if 条件1:
				条件1成立之后执行的代码块
			elif 条件2:
				条件1不成立,条件2成立执行的代码块
			elif 条件3:
				条件1、条件2不成立,条件3成立之后执行的代码块
			...
			else:
				以上所有条件都不成立的话,执行的代码块
			# 以上不管你写了多少种情况,也只会执行一种情况	
	"""
	eg:
        90分为优秀  80分良好  70分的中等  60分及格  60分以下的重修
        score = 90
    score = 80
    if score >= 90:
        print('优秀')
    # elif score >= 80 and score < 90:
    elif score >= 80:
        # elif 80<=score<90:  # 
        print('良好')
    elif score >= 70:
        print('中等')
    elif score >= 60:
        print('及格')
    else:
        print('重修')

if嵌套

age = 18
height = 160
weight = 100
is_beautiful = True
is_success = False
if age < 26 and height >= 160 and weight <= 100 and is_beautiful:
    print('小姐姐,能否给个微信?')
    if is_success:
        print('吃饭,看电影...')
        if True:
            if False:
                ...
    else:
        print('滚蛋吧,下一个更好')
else:
    print('认错人了')

if else练习题

1. 让用户输入用户名和密码,判断用户名和密码是否正确,如果正确,打印登录成功,否则打印用户名或者密码错误,用户名:kevin,密码:123
# 先分析,写注释
# 1. 先让用户输入用户名和密码
username = input('username>>>:')
password = input('password>>>:')  # password: str---->123

password = int(password) #
# 2. 比较用户名和密码
# 在python中,==比较值大小和类型
# if username == 'kevin' and password == '123':
if username == 'kevin' and password == 123:
    print('登录成功')
else:
    print('登录失败')
    
2. 根据不同的身份打印不同的输出信息
	kevin:管理员   jason:保洁员  tank:保安  jack:普通人员
       username = input('请输入你的身份信息:')

if username == 'kevin':
    print('管理员')
elif username == 'jason':
    print('保洁员')
elif username == 'tank':
    print('保安')
elif username == 'jack':
    print('普通人员')
else:
    print('请好好输入,干嘛呢')	 

循环结构

"""
	语法结构:
		while 条件:
			条件成立之后执行的循环体
"""
while True:
    # 1. 先让用户输入用户名和密码
    username = input('username>>>:')
    password = input('password>>>:')  # password: str---->123

    password = int(password)  # 只能转数字类型的
    # 2. 比较用户名和密码
    # 在python中,==比较值大小和类型
    # if username == 'kevin' and password == '123':
    if username == 'kevin' and password == 123:
        print('登录成功')
    else:
        print('登录失败')

while+break

# while +break
count = 0
while count < 3:
    # 1. 先让用户输入用户名和密码
    username = input('username>>>:')
    password = input('password>>>:')  # password: str---->123

    password = int(password)  # 只能转数字类型的
    # 2. 比较用户名和密码
    # 在python中,==比较值大小和类型
    # if username == 'kevin' and password == '123':
    if username == 'kevin' and password == 123:
        print('登录成功')
        break  # 调出while循环,它是跳出本层循环
    else:
        print('登录失败')

break跳出本层循环

count = 0
while count < 3:
    # 1. 先让用户输入用户名和密码
    username = input('username>>>:')
    password = input('password>>>:')  # password: str---->123

    password = int(password)  # 只能转数字类型的
    # 2. 比较用户名和密码
    # 在python中,==比较值大小和类型
    # if username == 'kevin' and password == '123':
    if username == 'kevin' and password == 123:
        print('登录成功')
        while True:
            cmd = input('请输入你的指令:')
            print('正在执行你的指令: %s' % cmd)

            '''如果输入的是q,就退出整个程序'''
            if cmd == 'q':
                break
        break
    else:
        print('登录失败')

标志位的使用

# 标志位的使用
flag = True
while flag:
    # 1. 先让用户输入用户名和密码
    username = input('username>>>:')
    password = input('password>>>:')  # password: str---->123

    password = int(password)  # 只能转数字类型的
    # 2. 比较用户名和密码
    # 在python中,==比较值大小和类型
    # if username == 'kevin' and password == '123':
    if username == 'kevin' and password == 123:
        print('登录成功')
        while flag:
            cmd = input('请输入你的指令:')
            print('正在执行你的指令: %s' % cmd)

            '''如果输入的是q,就退出整个程序'''
            if cmd == 'q':
                flag = False
    else:
        print('登录失败')