• 流程控制练习


    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')
  • 相关阅读:
    29.内置方法中之描述符
    28. 面向对象进阶之内置方法上
    Sort Colors*
    Implement Trie (Prefix Tree)
    Course Schedule
    Permutations
    Reverse Linked List
    Decode Ways
    Subsets *
    Longest Consecutive Sequence *
  • 原文地址:https://www.cnblogs.com/hedeyong/p/6959410.html
Copyright © 2020-2023  润新知