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)