流程控制
-
可以通过控制语句实现更丰富的逻辑以及更强大的功能。
-
几乎所有编程语言都有流程控制语句,功能也都基本相似。
-
其流程控制方式有
- 顺序结构
- 分支结构
- 循环结构
-
这里最简单最常用的就是顺序结构,即语句从上至下一一执行。
-
序是由语句构成,而流程控制语句 是用来控制程序中每条语句执行顺序的语句。
- 可以通过控制语句实现更丰富的逻辑以及更强大的功能。
- 几乎所有编程语言都有流程控制语句,功能也都基本相似。
-
其流程控制方式有
- 顺序结构
- 分支结构
- 循环结构
-
这里最简单最常用的就是顺序结构,即语句从上至下一一执行。
-
序是由语句构成,而流程控制语句 是用来控制程序中每条语句执行顺序的语句。
- 可以通过控制语句实现更丰富的逻辑以及更强大的功能。
- 几乎所有编程语言都有流程控制语句,功能也都基本相似。
-
其流程控制方式有
- 顺序结构
- 分支结构
- 循环结构
【1】顺序结构
- 这里最简单最常用的就是顺序结构,即语句从上至下一一执行。
print("1")
print("2")
print("3") #按顺序一个一个执行
【2】分支结构
- 顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。
- 对于要先做判断再选择的问题就要使用分支结构。
(1)单分支结构
#单分支: if
username = input('输入用户名:')
if username == 'dhy':
print(f'欢迎你光临')
(2)双分支结构 if ----else
- 顾名思义,二条分支二选一执行!
username = input('输入用户名:')
if username == 'dhy':
print('欢迎你光临')
else:
print('进入失败')
(3)多分支语句 if--elif---else
多分支即从比双分支更多的分支选择一支执行
score = input('请输入学生成绩:>>>>>')
#强转数据类型
score=int(score)
if score > 100:
print(f'试卷只有100分')
elif score>=90:
print('优秀')
elif score>80:
print('合格')
elif score>70:
print('良好')
elif score>=60:
print('及格')
else:
print('不及格')
练习题1
# 用户名 密码
# 两个输入框 --- > 用户名和密码
# ---> 用户名和密码是否正确
# 正确 :登陆成功
# 失败 : 再输一次
# 在失败 : 登录失败
# 用户名 密码
username = 'dhy'
password = '0703'
# 两个输入框 --- > 用户名和密码
username_input = input('请输入你的用户名:>>>>>')
password_input = input('请输入你的密码:>>>>>')
# ---> 用户名和密码是否正确
if username_input == username and password_input == password:
# 正确 :登陆成功
print(f'{username}登录成功')
# 失败 : 再输一次
else:
print('再给你一次机会')
username_input = input('请输入你的用户名:>>>>>')
password_input = input('请输入你的密码:>>>>>')
if username_input == username and password_input == password:
print(f'{username}登录成功')
# 在失败 : 登录失败
else:
print("登陆失败")
练习题2
定义一个列表 [用户名,密码]
# 两个输入框 --- > 用户名和密码
# ---> 用户名和密码是否正确
# 正确 :登陆成功
# 失败 : 再输一次
# 在失败 : 登录失败
username,password = ['dhy','0703']
# 两个输入框 --- > 用户名和密码
username_input = input('请输入你的用户名:>>>>>')
password_input = input('请输入你的密码:>>>>>')
# ---> 用户名和密码是否正确
if username_input == username and password_input == password:
# 正确 :登陆成功
print(f'{username}登录成功')
# 失败 : 再输一次
else:
username_input = input('请输入你的用户名:>>>>>')
password_input = input('请输入你的密码:>>>>>')
if username_input == username and password_input == password:
print(f'{username}登录成功')
# 在失败 : 登录失败
else:
print("登陆失败")
练习题3
# 定义一个字典 {'key':'value'} ---> 多用户登录功能
# 两个输入框 --- > 用户名和密码
# ---> 用户名和密码是否正确
# 正确 :登陆成功
# 失败 : 再输一次
# 再失败 : 登录失败
# 【1】定义一个字典 ---> 又保存了我们的正确的登录信息
# {'dream':"521","hope":"369"} ---> 字典取值 --- get()
# {"dream":["dream","521"]} ---> 把列表取出来 --> 在进行解压赋值
# 【2】两个输入框 ---> 输入用户名和密码
# 字符串 ---> 字典中的键 ---> 直接根据键取值 ---> 成员运算
# 【3】多用户登录
# 【3.1】有一个信息字典
# 先判断有没有键 ---
# 没有键
# 去字典中取出密码
user_pwd = {'dhy':'0703','lqq':'0313'}
user_data = {'dhy':{'age':20,'hobby':'travel','height':172,
'lqq':{'age':22,'hobby':'sing','height':168}}}
username_input = input('请输入你的用户名:>>>>>')
password_input = input('请输入你的密码:>>>>>')
if username_input not in user_pwd:
print(f'{username_input}查不到这个人')
if password_input == user_pwd.get(username_input):
print(f'''
当前用户:>>>>>{username_input}
当前年龄:>>>>>{user_data[username_input]['age']}
当前爱好:>>>>>{user_data[username_input]['hobby']}
当前身高:>>>>>{user_data[username_input]['height']}
''')
else:
print('再给你次机会')
username_input = input('请输入你的用户名:>>>>>')
password_input = input('请输入你的密码:>>>>>')
if username_input not in user_pwd:
print(f'{username_input}查不到这个人')
if password_input == user_pwd.get(username_input):
print(f'''
当前用户:>>>>>{username_input}
当前年龄:>>>>>{user_data[username_input]['age']}
当前爱好:>>>>>{user_data[username_input]['hobby']}
当前身高:>>>>>{user_data[username_input]['height']}
''')
else:
print('登陆失败')
【3】循环结构
- 在不少实际问题中有许多具有规律性的重复操作,因此在程序中就需要重复执行某些语句。
- 一组被重复执行的语句称之为循环体,能否继续重复,决定循环的终止条件。
- Python语言中的循环语句支持 while循环(条件循环)和for循环(遍历循环)。
while循环
# while+condition(条件)
# 条件为真时就会一直执行while内的代码体
# 条件为假的时候就会终止循环执行代码体
#定义起始数字
# count = 0
# while count < 5:
# print(count)
# count += 1
# count = 3 的时候不打印3打印其他数字
# count = 0
# while count < 5:
# count += 1
# if count == 3:
# print(f'已经跳过了{count}')
# continue
# print(count)
#当count=4时结束循环
# count = 0
# tag =True
# while count < 10 and tag:
# count += 1
# if count == 3:
# print(f'已经跳过了{count}')
# #退出当次循环
# continue
# if count ==4:
# print(f'遇到一点小问题')
# tag=False
# if count==8:
# #退出当前while循环
# break
# print(count)
练习
user_pwd = {'dhy':"0703"}
count=3
while count>0:
count-=1
username_input = input('请输入用户名:>>>>>')
password_input = input('请输入密码:>>>>>')
if username_input not in user_pwd:
print(f'此用户不存在,还剩下{count}次机会')
if count == 0:
continue_input = input('你还要继续尝试嘛(y/n)')
if continue_input == 'y':
count = 3
else:
print('谢谢使用')
break
continue
if password_input != user_pwd.get(username_input):
print(f'用户名或密码错误,你还有{count}次机会')
continue
else:
print('登录成功')
break
for循环
for
是循环的关键字。variable
是循环变量,它会在每次循环中取sequence
中的一个值。sequence
是一个序列,可以是列表、元组、字符串等。
num_list = [1,2,3,4,5,6]
for i in num_list:
print(i)
name ='dhy'
for i in name:
print(i)
num_tuple = (1,2,3,4)
for i in num_tuple:
print(i)
name_dict = {'name':'dhy',"age":'20'}
for i in name_dict:
print(i)
print(name_dict[i])
range关键字
#range关键字
#顾头不顾尾 ---1 取不得5 只能取得4
# for i in range(1,5):
# print(i)
#
# for i in range(1,10,2):
# print(i)
#
# for i in range(10):
# print(i)
num_list = []
for i in range(1,16):
num_list.append(i)
print(num_list) #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
print(random.choice([i for i in range(1,16)]))
标签:username,控制,用户名,流程,count,---,print,input
From: https://www.cnblogs.com/dhyuan/p/17899779.html