栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

第七次Python作业

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

第七次Python作业

问题 A: 列表嵌套字典的排序

ls=[]
co=eval(input())
for i in range(co):
    x,y=input().split()
    c={}
    c['name']=x
    c['age']=eval(y)
    ls.append(c)#每次都创办一个新字典,然后将字典存储到列表里面
ls1=sorted(ls,key=lambda x:x['age'])
ls2=sorted(ls,key=lambda x:x['name'])

print(ls1)
print(ls2)

问题 B: 字典查询

dict1={'赵广辉':'13299887777','特朗普':'814666888','普京':'522888666','吴京':'13999887777'}
a=input()
o=dict1.get(a,'数据不存在')
if o=='数据不存在':
    print(o)
else:
    print("{}:{}".format(a,o))

 问题 C: 查询省会

while True:
    capitals = {'湖南':'长沙','湖北':'武汉','广东':'广州','广西':'南宁','河北':'石家庄','河南':'郑州','山东':'济南','山西':'太原','江苏':'南京','浙江':'杭州','江西':'南昌','黑龙江':'哈尔滨','新疆':'乌鲁木齐','云南':'昆明','贵州':'贵阳','福建':'福州','吉林':'长春','安徽':'合肥','四川':'成都','西藏':'拉萨','宁夏':'银川','辽宁':'沈阳','青海':'西宁','海南':'海口','甘肃':'兰州','陕西':'西安','内蒙古':'呼和浩特','台湾':'台北','北京':'北京','上海':'上海','天津':'天津','重庆':'重庆','香港':'香港','澳门':'澳门'}
    a=input()
    o=capitals.get(a,'输入错误')
    print(o)

 问题 D: 摩尔斯电码转换

Mo = [".-", "-...", "-.-.", "-..", ".", "..-.", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.",
              "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--.."]
letter = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u',
            'v', 'w', 'x', 'y', 'z']

se=input().lower() #输入,并且将大写转换成小写
ls=[]
for i in se:
    if i in letter:
        ls.append(Mo[letter.index(i)]) #返回的是角标
    else:
        ls.append(i)#其它字符不变
print(''.join(ls))

问题 E: 用字典来统计词频

dict=eval(input()) #eval将字符串当成有效的表达式来求值并返回计算结果,所以输入大括号会自动返回一个字典
str=input() #input输入是可以输入空格的
l=list(str.split()) #将str以空格隔开依次截取
for i in l:
    dict[i]=dict.get(i,0)+1 #get里面赋初值,第一个是键,第二个是键的初值,如果出现了就+1
print(dict)

 问题 F: 字典更新

dict1 = {'赵广辉': '13299887777', '特朗普': '814666888', '普京': '522888666', '吴京': '13999887777'}
a=input()
b=input()
o=dict1.get(a,'数据不存在')
if o=='数据不存在':
    print(o)
    for key,value in dict1.items():
        print(f"{key}:{value}")
else:
    dict1[a]=b
    for key,value in dict1.items():
        print(f"{key}:{value}")

 问题 G: 排序输出字典中数据

 

 

l1=[]
l2=[]
dic1 = {'Tom': 21, 'Bob': 18, 'Jack': 23, 'Ana': 20}
dic2 = {'李雷': 21, '韩梅梅': 18, '小明': 23, '小红': 20}
n=input()
n=int(n)
dic11=sorted(dic1.items(),key=lambda x:x[0]) #dic11是一个列表,dic1.items()是进行排序的元素,key=lambda x:x[0],对第一个元素进行排序
#第一个元素是键,第二个元素是值
dic22=sorted(dic2.items(),key=lambda x:x[1])
dic11=[x[0] for x in dic11] #dic11=[x[0] for x in dic11]取元组的第一个元素存储在新的列表中
dic11=dic11[0:n]
dic22=dic22[0:n]
print(dic11)
print(dic22)
问题 H: 打印商品名

dict1={}
str=input()
l1=list(str.split())
l2=[]
t=len(l1)
for i in range(0,t):
    l2.append(i)
dict1=dict(zip(l2,l1)) #zip将两个字典连接成字符串

print("商品列表:")
for key,value in dict1.items():
    print(f"{key}	{value}")

 

问题 I: 字符串压缩

s=input()
t=len(s)
dic={}
ok=1
for i in s:
    if '0'<=i<='9':
        print("ERROR")
        ok=0
        break
    else:
        if i in dic.keys():
            dic[i]=dic[i]+1
        else:
            dic[i]=1
if ok==1:
    print(dic)
    print(t)
    s=''
    for i in dic.keys():
        if dic[i]>1:
            '''leng=leng+2
            print("{}{}".format(i,dic[i]),end="")'''
            s=s+str(i)+str(dic[i])
        else:
            s=s+str(i)
    print(s)
    print(len(s))

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/932434.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号