• python学习之老男孩python全栈第九期_day009作业


    1. 写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。

    答:

    1 l1 = []
    2 def odd(li):
    3     for i in range(1,len(li),2):
    4         l1.append(li[i])
    5     return l1
    6 rec = ['KID', '灵均', '尹宁', '123',123,456]
    7 odd(rec)
    8 print(l1)

    结果:

    ['灵均', '123', 456]

    2. 写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。

    答:

    1 def length(s):
    2     if len(s) > 5:
    3         return '长度大于5.'
    4     else:
    5         return '长度不大于5'
    6 l = ['1',2,3,4,5,6]
    7 rec = length(l)
    8 print(rec)

    结果:

    长度大于5.

    3. 写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。

    答:

    1 def func(s):
    2     if len(s) > 2:
    3         return s[:2]
    4     else:
    5         return s
    6 li = [1,2,3,4,5,6,7,8,9]
    7 rec = func(li)
    8 print(rec)

    结果:

    [1, 2]


    4. 写函数,计算传入字符串中[数字]、[字母]、[空格] 以及 [其他]的个数,并返回结果。

    答:

     1 def count(s):
     2     dict = {'数字的个数:':0, '字母的个数:':0, '空格的个数:':0, '其他的个数:':0}
     3     for i in s:
     4         if i.isdigit():
     5             dict['数字的个数:'] += 1
     6         elif i.islower() or i.isupper():
     7             dict['字母的个数:'] += 1
     8         elif i.isspace():
     9             dict['空格的个数:'] += 1
    10         else:
    11             dict['其他的个数:'] += 1
    12     return dict
    13 str = input('请输入内容:')
    14 res = count(str)
    15 print(res)

    5. 写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容,并返回结果。

    答:

     1 def space(s):
     2     if isinstance(s,(str, list, tuple)):
     3         for i in s:
     4             i = str(i)
     5             if i.isspace():
     6                 return  '含空内容'
     7         return
     8     else:
     9         return '不是字符串,列表或元组'
    10 a = [1, 2, 3, ' ',4, '7', 5]
    11 a1 = [1, 2, 3, 4, '7', 5]
    12 b = '   '
    13 c = 'afagjk  啊哈搜集'
    14 d = [' ',2,3,4,5]
    15 e = (1,2,3,4,' ',' 1')
    16 f = {'name':'KID'}
    17 print(space(a))
    18 print(space(a1))
    19 print(space(b))
    20 print(space(c))
    21 print(space(d))
    22 print(space(e))
    23 print(space(f))

    结果:

    1 含空内容
    2 None
    3 含空内容
    4 含空内容
    5 含空内容
    6 含空内容
    7 不是字符串,列表或元组

    6. 写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
    dic = {"k1": "v1v1", "k2": [11,22,33,44]}
    PS:字典中的value只能是字符串或列表

    答:

     1 def func(s):
     2     dic1 = {}
     3     if isinstance(s,dict):
     4         for k,v in s.items():
     5             if len(v) > 2:
     6                 s[k] = v[0:2]
     7         return s
     8     else:
     9         return '不是字典'
    10 dic = {'k1': 'v1v1', 'k2': [11,22,33,44]}
    11 res = func(dic)
    12 print(res)

    结果:

    {'k1': 'v1', 'k2': [11, 22]}

    7. 写函数,接收两个数字参数,返回比较大的那个数字。

    答:

    1 def func(a,b):
    2     if a > b:
    3         return a
    4     else:
    5         return b
    6 res = func(1,2)
    7 print(res)

    结果:
    2


    8. 写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作(进阶)。


    9. 写一个函数完成三次登陆功能,再写一个函数完成注册功能

    答:

     1 user_name = 'KID'
     2 password = '123'
     3 
     4 def login():
     5     for i in range(0,3):
     6         name = input('请输入账号:')
     7         if name == user_name:
     8             psw = input('请输入密码:')
     9             if psw == password:
    10                 print('恭喜你,登录成功.')
    11                 return
    12             else:
    13                 print('密码输入错误')
    14                 if i == 2:
    15                     print('您的机会已用完,请12小时之后再试')
    16                 else:
    17                     print('您还有%s次机会' % (2 - i))
    18         else:
    19             print('该账号不存在')
    20             if i == 2:
    21                 print('您的机会已用完,请12小时之后再试')
    22             else:
    23                 print('您还有%s次机会' % (2 - i))
    24 res = login()
    25 
    26 
    27 def regist():
    28     while 1:
    29         re_name = input('昵称')
    30         if re_name == user_name:
    31             print('该用户已存在')
    32         else:
    33             re_psw = input('密码')
    34             return '注册成功'
    35 ret = regist()
    36 print(ret)
  • 相关阅读:
    C++分数类
    2019 SDN大作业
    个人作业-软工实践总结
    2019 SDN上机第7次作业
    2019 SDN上机第6次作业
    2019 SDN课程阅读作业(2)
    个人作业--软件评测
    2019 SDN上机第5次作业
    2019 SDN上机第4次作业
    2019 SDN第一次阅读作业
  • 原文地址:https://www.cnblogs.com/lpgit/p/9278469.html
Copyright © 2020-2023  润新知