#2、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
def test(s):
li = []
for i in range(len(s)):
if i%2 == 0:
li.append(s[i])
return li
print(test([345]))
# 第二种
def func(l)
return l[1::2]
print(func([1,2,3,4,5]))
View Code
#3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
1 def objt(s):
2 if len(s) > 5:
3 return True
4 else:return False
5
6 print(objt(('qwwadwfwf','adsf','adsdvfa','adsd')))
7 #第二种
8 def func(x):
9 return len(x) > 5
10
11 print(objt(('qwwadwfwf','adsf','adsdvfa','adsd')))
View Code
#4、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
1 def objt(s):
2 li = []
3 if len(s) > 2:
4 for i in range(2):
5 li.append(s[i])
6 else:li = list(s)
7 return li
8 #第二种
9 def func(1):
10 if len(1) > 2:
11 return l[0:2]
12
13 print(func([1,2,3,4]))
14 #第三种
15 def func(1):
16 return l[0:2]
17
18 print(func([1,2,3,4]))
View Code
#5、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数,并返回结果。
1 def objt(s):
2 sum = 0
3 sum1 = 0
4 sum2 = 0
5 sum3 = 0
6 for i in range(len(s)):
7 if s[i].isdigit():
8 sum += 1
9 elif s[i].isalpha():
10 sum1 += 1
11 elif s[i] == ' ':
12 sum2 += 1
13 else:sum3 += 1
14 return sum,sum1,sum2,sum3
15
16 print(objt('ugguyg 45787!!!'))
17
18 #第二种
19 def func(s)
20 dic = {'num':0,'alpha':0,'space':0,'other':0}
21 for i in s:
22 if i.isdigit():
23 dic['num'] += 1
24 elif i.isalpha():
25 dic['alpha'] += 1
26 elif i.isspace():
27 dic['space'] += 1
28 else:dic['other'] += 1
29 return dic
30 print(objt('ugguyg 45787!!!'))
View Code
#6、写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容,并返回结果。
1 def func(x):
2 if type(x) is str and x:
3 for i in x:
4 if i == ' ':
5 return True
6 elif x and type(x) is list or type(x) is tuple:
7 for i in x:
8 if not i:
9 return True
10 elif not x:
11 return true
View Code
#7、写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
# dic = {"k1": "v1v1", "k2": [11,22,33,44]}
# PS:字典中的value只能是字符串或列表
1 def objt(s):
2 for i in s:
3 if len(s[i]) > 2:
4 s[i]=s[i][0:2]
5 return s
6
7 a = objt({"k1": "v1v1", "k2": [11,22,33,44]})
8
9 print(a)
View Code
#8、写函数,接收两个数字参数,返回比较大的那个数字。
1 def objt(*orgs):
2 a = 0
3 for i in orgs:
4 if a < i :
5 a = i
6 return a
7
8 print(objt(1,2,3,4,5,6,999))
9
10 #三元运算:
11 # a=1
12 # b=5
13 # c = a if a>b else b
14 # 变量 = 条件返回True的结果 if 条件 else 条件返回False的结果
15
16 #第二种
17 def func(a,b):
18 return a if a>b else b
View Code
#9、写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作(进阶)。
1 def objt():
2 file = input('文件路径:')
3 text = input('修改前的内容')
4 text1 = input('修改后的内容')
5 with open(file,encoding='utf-8') as f,open('file.bak','w',encoding='utf-8') as f1:
6 for line in f:
7 if text in line:
8 line = line.replace(text,text1)
9 f1.write(line)
10
11 import os
12 os.remove(file)
13 os.rename('file.bak',file)
14
15 objt()
View Code
#10、写一个函数完成三次登陆功能,再写一个函数完成注册功能