浙大版《Python 程序设计》题目集 编程题第五章

第5章-1 输出星期名缩写

d={1:'Mon',2:'Tue',3:'Wed',4:'Thu',5:'Fri',6:'Sat',7:'Sun'}
n=int(input())
print(d[n])

第5章-2 图的字典表示

n=int(input())
counte=0    #边数
sumd=0  #度的和
for i in range(n):
    d=eval(input())
    for j in d.keys():
        l=d[j]
        for key,value in l.items():
            counte+=1
            sumd+=value
print(n,counte,sumd)

第5章-3 四则运算(用字典实现)

m=int(input())
operator=input()
n=int(input())
d={'+':'m+n','-':'m-n','*':'m*n','/':'m/n'}
try:
    print('{:.2f}'.format(eval(d[operator])))
except ZeroDivisionError:
    print('divided by zero')

第5章-4 分析活动投票情况

l=list(map(int,input().split(',')))
s=[i for i in range(6,11) if i not in l]
print(*s,sep=' ')

第5章-5 统计字符出现次数

s=input()
c=input()
print(s.count(c))

第5章-6 统计工龄

n=int(input())
l=list(map(int,input().split()))
d={}
for i in l:
    d[i]=d.get(i,0)+1
for key in sorted(d.keys()):
    print('{0}:{1}'.format(key,d[key]))

第5章-7 列表去重

l=eval(input())
s=[]
for i in l:
    if i not in s:
        s.append(i)
print(*s,sep=' ')

第5章-8 能被3,5和7整除的数的个数(用集合实现)

m,n=map(int,input().split())
s3=set();s5=set();s7=set()
for i in range(m,n+1):
    if i%3==0:
        s3.add(i)
    if i%5==0:
        s5.add(i)
    if i%7==0:
        s7.add(i)
s=s3&s5&s7
print(len(s))

第5章-9 求矩阵鞍点的个数

n=int(input())
l=[]
for i in range(n):
    s=list(map(int,input().split()))
    l.append(s)
x=[]
y=[]
s=set()
for i in range(n):
    xmax=max([l[i][j] for j in range(n)])   #行最大值
    ymin=min([l[j][i] for j in range(n)])   #列最小值
    x+=[(i,j) for j in range(n) if l[i][j]==xmax]
    y+=[(j,i) for j in range(n) if l[j][i]==ymin]
    s|=set(x)&set(y)
print(len(s))

第5章-10 两数之和

l=list(map(int,input().split(',')))
num=int(input())
d={}
for i in l:
    d[i]=num-i
for key,value in d.items():
    if key in l and value in l:
        print(l.index(key),l.index(value))
        break
else:
    print('no answer')

第5章-11 字典合并

d1=eval(input())
d2=eval(input())
d3={}
for i in d1:
    d3[i]=d1[i]+d2.get(i,0)
for i in d2:
    if i not in d3.keys():
        d3[i]=d2[i]
d3=dict(sorted(d3.items(),key=lambda x:x[0] if type(x[0])==int else ord(x[0])))
cnt=0
print('{',end='')
for i in d3:
    if type(i)==str:
        print('"{}":{}'.format(i,d3[i]),end='')
    else:
        print('{}:{}'.format(i,d3[i]),end='')
    cnt+=1
    if cnt!=len(d3):
        print(',',end='')
print('}',end='')
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值