文章目录
- 1、写函数,接收n个数字,求这些参数数字的和
- 2、读代码,回答:代码中,打印出来的值a,b,c分别是什么?
- 3、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者
- 4、写函数,判断用户传入的值(字符串、列表、元组)长度是否大于5
- 5、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者
- 6、写函数,计算传入字符串中【数字】、【字母】、【空格】 以及 【其他】的个数,并返回结果
- 7、写函数,检查用户传入的对象(字符串、列表、元组) 的每一个元素是否含有空内容,并返回结果
- 8、写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者
- 9、写函数,接收两个数字参数,返回比较大的那个数字
- 10、三元运算(简化代码)
- 11、写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作(进阶)
1、写函数,接收n个数字,求这些参数数字的和
def sum_func(*args):
i = 0
for a in args:
i = i + a
return i
b = sum_func(1,2,3,4,5)
print(b)
2、读代码,回答:代码中,打印出来的值a,b,c分别是什么?
a = 10
b = 20
def test5(a, b):
print(a, b)
c = test5(b, a)
print(c)
a = 10
b = 20
def test5(a, b):
a = 3
b = 5
print(a, b)
c = test5(b, a)
print(c)
3、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者
def func(l):
return l[1::2] # 切片
print(func([1,2,3,4,5]))
4、写函数,判断用户传入的值(字符串、列表、元组)长度是否大于5
def len_func(a):
return len(a) > 5
5、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者
def len_func(a):
return a[0:2]
print(len_func(a))
6、写函数,计算传入字符串中【数字】、【字母】、【空格】 以及 【其他】的个数,并返回结果
dic = {'num':0,'alpha':0,'space':0,'other':0}
for i in s:
if i.isdigit():
dic['num']+=1
elif i.isalpha():
dic['alpha'] += 1
elif i.isspace():
dic['space'] += 1
else:
dic['other'] += 1
return dic
print(func('+0-0skahe817jashf wet1'))
7、写函数,检查用户传入的对象(字符串、列表、元组) 的每一个元素是否含有空内容,并返回结果
def func(x):
if type(x) is str and x: #参数是字符串
for i in x:
if i == ' ':
return True
elif x and type(x) is list or type(x) is tuple: #参数是列表或者元组
for i in x:
if not i:
return True
elif not x:
return True
print(func([]))
8、写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者
def func(dic):
for x in dic:
if len(dic[x]) > 2:
dic[x] = dic[x][:2]
return dic
dic = {"a":"111" , "b":"222" , "c":['a','b','c']}
print(func(dic))
9、写函数,接收两个数字参数,返回比较大的那个数字
def size(a,b):
if a > b:
return a
else:
return b
print(size(4,3))
10、三元运算(简化代码)
必须要有结果
必须要有if和else
只能是简单的情况
变量 = 条件返回True的结果 if 条件 else 条件返回False的结果
def func(a , b):
c = a if a > b else b
return c
11、写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作(进阶)
def func(filename, old, new):
with open(filename, encoding='utf-8') as f, open('%s.bak'%filename, mode='w', encoding='utf-8') as f2:
for line in f:
if old in line:
line = line.replace(old, new)
f2.write(line)
import os
os.remove(filename)
os.rename('%s.bak'%filename, filename)
func('注册与登陆验证.py', 'xxxx','login was successful')