作业
作业1
1.定义一个函数,完成用户输入的三个数字的求和,以及在另一个函数求该和的平均值(用到函数传参,函数返回值)
def sum(*args): # 求用户输入数字的和
sum_result = 0
for i in args:
sum_result += i
return sum_result
def average(*args): # 求sum函数求和后的平均值
average_result = sum(*args) / len(args)
return average_result
ipt = input('请输入需要求平均值的数字:')
list1 = list(map(int, ipt.split(' ')))
print(average(*list1))
输出结果:
请输入需要求平均值的数字:11 34 12
19.0
作业2
2.将列表l输出如下。l = [‘jack’, (‘tom’, 23), ‘rose’, (14, 55, 67)]
提示:用递归实现
网上参考的代码,大概能看懂,但用递归自己写不会!
l = ['jack', ('tom', 23), 'rose', (14, 55, 67)]
def dp(l):
if isinstance(l, (str, int)): # 判断l的类型,若是字符串或整数则打印
print(l)
else:
for i in l: #先进入这里的循环
dp(i)
dp(l)
输出结果:
jack
tom
23
rose
14
55
67
作业3
3.infors = [{‘name’: ‘qian’, ‘age’: 28}, {‘name’: ‘amy’, ‘age’: 20}, {‘name’: ‘james’, ‘age’: 25}] 以name对应的值进行排序
infors = [{'name': 'qian', 'age': 28}, {'name': 'amy', 'age': 20}, {'name': 'james', 'age': 25}]
list_name = []
for i in infors:
list_name.append(i['name'])
list_name.sort()
print(list_name)
输出结果:
['amy', 'james', 'qian']