流程控制练习
1:编写for循环,利用索引遍历出每一个字符
msg='hello egon 666'
2:编写while循环,利用索引遍历出每一个字符
msg='hello egon 666'
3:
msg='hello alex'中的alex替换成SB
4:
msg='/etc/a.txt|365|get'
将该字符的文件名,文件大小,操作方法切割出来
5.编写while循环,要求用户输入命令,如果命令为空,则继续输入
6.编写while循环,让用户输入用户名和密码,如果用户为空或者数字,则重新输入
7.编写while循环,让用户输入内容,判断输入的内容以alex开头的,则将该字符串加上_SB结尾
8.
1.两层while循环,外层的while循环,让用户输入用户名、密码、工作了几个月、每月的工资(整数),用户名或密码为空,或者工作的月数不为整数,或者
月工资不为整数,则重新输入
2.认证成功,进入下一层while循环,打印命令提示,有查询总工资,查询用户身份(如果用户名为alex则打印super user,如果用户名为yuanhao或者wupeiqi
则打印normal user,其余情况均打印unkown user),退出功能
3.要求用户输入退出,则退出所有循环(使用tag的方式)
运行效果如下:
user: egon
password: 123
work_mons: 12
salary: 10000
1 查询总工资
2 查询用户身份
3 退出登录
>>: 1
总工资是: 120000.0
1 查询总工资
2 查询用户身份
3 退出登录
>>: 2
unkown user
1 查询总工资
2 查询用户身份
3 退出登录
>>: 3
解答:
1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 #1:编写for循环,利用索引遍历出每一个字符 4 msg='hello egon 666' 5 for i in range(len(msg)): 6 print(msg[i],end=' ')
1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 #2:编写while循环,利用索引遍历出每一个字符
4 msg='hello egon 666'
5 i=0
6 while i<len(msg):
7 print(msg[i], end=' ')
8 i+=1
1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 #msg='hello alex'中的alex替换成SB
4 msg='hello alex'
5 print(msg.replace('alex','SB'))
1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 '''
4 msg='/etc/a.txt|365|get'
5 将该字符的文件名,文件大小,操作方法切割出来
6 '''
7 msg='/etc/a.txt|365|get'
8 # print(msg.split('|'))
9 a=msg.split('|')
10 b=a[0].split('/')
11 print(b[-1],a[1],a[2])
1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 #5.编写while循环,要求用户输入命令,如果命令为空,则继续输入
4
5 # tag=True
6 # while tag:
7 # name=input('请输入用户名:')
8 # if name == '':
9 # print('输入为空,请重新输入: ')
10 # continue
11 # else:
12 # passwd=input('请输入密码:')
13 # if (name=='egon') and (passwd == '123'):
14 # print('Login Successful ')
15 # while tag:
16 # res = input('>>:')
17 # if (res == 'q'):
18 # tag = False
19 # break
20 # break
21 # print('login err')
22
23
24 while True:
25 a=input('请输入命令:')
26 if a.isspace() or not a:
27 continue
28 break
1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 #6.编写while循环,让用户输入用户名和密码,如果用户为空或者数字,则重新输入
4 tag=True
5 while tag:
6 name=input('请输入用户名:')
7 if name == '':
8 print('输入为空,请重新输入: ')
9 continue
10 elif name.isdigit():
11 print('输入为数字,请重新输入: ')
12 continue
13 else:
14 passwd=input('请输入密码:')
15 if (name=='egon') and (passwd == '123'):
16 print('Login Successful ')
17 while tag:
18 res = input('>>:')
19 if (res == 'q'):
20 tag = False
21 break
22 break
23 print('login err')
1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 '''
4 7.编写while循环,让用户输入内容,判断输入的内容以alex开头的,则将该字符串加上_SB结尾
5 '''
6 tag=True
7 while tag:
8 name=input('请输入用户名:')
9 if name == '':
10 print('输入为空,请重新输入: ')
11 continue
12 elif name.isdigit():
13 print('输入为数字,请重新输入: ')
14 continue
15 else:
16 passwd=input('请输入密码:')
17 if (name=='egon') and (passwd == '123'):
18 print('Login Successful ')
19 while tag:
20 res = input('>>:')
21 if res.startswith('alex'): #判断输入字符串是否是以alex开头
22 print(res+'_SB')
23 continue
24 elif (res == 'q'):
25 tag = False
26 break
27 print(res)
28 break
29 print('login err')
1 #!/usr/bin/env python
2 # -*- coding:utf-8 -*-
3 '''
4 8.
5 1.两层while循环,外层的while循环,让用户输入用户名、密码、工作了几个月、每月的工资(整数),用户名或密码为空,或者工作的月数不为整数,或者
6 月工资不为整数,则重新输入
7 2.认证成功,进入下一层while循环,打印命令提示,有查询总工资,查询用户身份(如果用户名为alex则打印super user,如果用户名为yuanhao或者wupeiqi
8 则打印normal user,其余情况均打印unkown user),退出功能
9 3.要求用户输入退出,则退出所有循环(使用tag的方式)
10
11 运行效果如下:
12 user: egon
13 password: 123
14 work_mons: 12
15 salary: 10000
16
17 1 查询总工资
18 2 查询用户身份
19 3 退出登录
20
21 >>: 1
22 总工资是: 120000.0
23
24 1 查询总工资
25 2 查询用户身份
26 3 退出登录
27
28 >>: 2
29 unkown user
30
31 1 查询总工资
32 2 查询用户身份
33 3 退出登录
34
35 >>: 3
36 '''
37 tag=True
38 while tag:
39 name = input('请输入用户名:')
40 while name == '':
41 name=input('用户名为空,请重新输入: ')
42 passwd = input('请输入密码:')
43 while passwd=='':
44 passwd=input('密码为空,请重新输入: ')
45 work_mons=input('请输入工作时间:')
46 while not (work_mons.isdigit()):
47 work_mons = input('输入不为数字,请重新输入:')
48 salary=input('请输入每月工资:')
49 while not (salary.isdigit()):
50 salary = input('输入不为数字,请重新输入:')
51 if (name=='egon' and passwd=='123')\
52 or (name=='alex' and passwd=='123')\
53 or (name=='yuanhao' and passwd=='123')\
54 or (name=='wupeiqi' and passwd=='123'):
55 print('user:',name)
56 print('password:',passwd)
57 print('work_mons:%s'%work_mons)
58 print('salary:',salary)
59 a='1 查询工资'
60 b='2 查询用户身份'
61 c='3 退出登录'
62 print(a.rjust(23,' '))
63 print(b.rjust(25, ' '))
64 print(c.rjust(23, ' '))
65 while tag:
66 res = input('>>:')
67 if (res == '1'):
68 print('总工资是:%s'%(int(work_mons)*int(salary)))
69 elif (res == '2'):
70 if name=='alex':
71 print('super user')
72 elif name=='yuanhao'or name=='wupeiqi':
73 print('normal user')
74 else:
75 print('unkown user')
76 elif(res == '3'):
77 tag=False
78 break
79 break
80 print('login err')