# 第6章-1 输入列表,求列表元素和(eval输入应用) (10分)
def demo_6_1():
print(sum(eval(input())))
# 第6章-2 一帮一 (15分)
def demo_6_2():
n = int(input())
stu = []
woman = []
man = []
for i in range(n):
t = input().split()
stu.append(t)
if t[0] == '0':
woman.append(t[1])
else:
man.append(t[1])
for i in range(n//2):
if stu[i][0] == '0':
print(woman.pop(0),man.pop())
else:
print(man.pop(0),woman.pop())
# 第6章-3 列表或元组的数字元素求和 (20分)
def demo_6_3():
def f(string):
res=[]
for x in string:
if type(x)==list or type(x)==tuple:
for son in f(x):
res.append(son)
elif type(x)==type(1):
res.append(x)
return res
string=eval(input())
print(sum(f(string)))
# 第6章-4 列表数字元素加权和(1) (40分)
def demo_6_4():
def f(lists,weight):
res=[]
for x in lists:
if type(x)==list:
for son in f(x,weight+1):
res.append(son)
elif type(x)==type(1):
res.append(x*weight)
return res
string=eval(input())
print(sum(f(string,1)))
# 第6章-5 列表元素个数的加权和(1) (40分)
def demo_6_5():
def f(lists,weight):
res=[]
for x in lists:
if type(x)==list:
for son in f(x,weight+1):
res.append(son)
elif type(x)==type(1):
res.append(weight)
return res
string=eval(input())
print(sum(f(string,1)))
# 第6章-6 求指定层的元素个数 (40分)
def demo_6_6():
def f(lists,weight):
res=[]
for x in lists:
if type(x)==list:
for son in f(x,weight+1):
res.append(son)
elif type(x)==type(1):
res.append(weight)
return res
string=eval(input())
level=int(input())
print(f(string,1).count(level))
# 第6章-7 找出总分最高的学生 (15分)
def demo_6_7():
class stu:
def __init__(self,id,name,s1,s2,s3):
self.id=id
self.name=name
self.s=int(s1)+int(s2)+int(s3)
n=int(input())
res=stu(0,0,0,0,0)
for i in range(n):
id,name,s1,s2,s3=input().split()
t=stu(id,name,s1,s2,s3)
if t.s>res.s:
res=t
print(res.name,res.id,res.s)
# 第6章-8 *输出全排列(选作) (20分)
def demo_6_8():
def f(string,x):
if x not in string:
string+=x
if len(string)<n:
for x in num:
f(string,x)
else:
res.append(string)
n=int(input())
num=[str(x) for x in range(1,n+1)]
res=[]
for x in num:
f("",x)
print(*res,sep="\n")
PTA-浙大版《Python 程序设计》AC解答汇总-第六章
最新推荐文章于 2024-07-27 17:39:19 发布