案例来源:

黑马程序员——Python快速编程入门第2版 第五章 p068 实训案例 5.7.1青春有你

近两年偶像选秀节目风靡,吸引了许多喜欢唱跳、有明星梦想的少男少女参加,《青春有你》正是节目之一。《青春有你》采用计票机制,选手获得的票数越多,排名就越靠前。本案例要求编写程序,接收选手的姓名和票数,输出排序后的成绩。

目录

python代码

运行结果

代码中相应的要点

time.sleep()

异常处理——try-except

字典d.get()方法

字典的排序


python代码如下:

##p068 5.7.1 青春有你
print('《青春有你》采用计票机制,选手获得的票数越多,排名就越靠前。本案例要求编写程序,\
接收选手的姓名和票数,输出排序后的成绩。')import time as t
print('****************选手的号数与名称***********************')
print('1.A   2.B   3.C   4.D   5.E   6.F   7.G   8.H   9.I')
print('*********************************************************')
id_name = {1:'A',2:'B',3:'C',4:'D',5:'E',6:'F',7:'G',8:'H',9:'I'}
d={1:0,2:0,3:0,4:0,5:0,6:0,7:0,8:0,9:0}
c = 0
while c<=9:  #共十位评委try:n = eval(input('请评委{}根据以上选手的号数进行投票:'.format(c+1)))if n in (1,2,3,4,5,6,7,8,9):d[n] = d.get(n,0)+1c+=1elif n>=10 or n<=0 :print('您输入的号数有误,请根据提示重新投票')t.sleep(1)except:print('输入的形式有误,请仅输入选手号')t.sleep(1)
ls = sorted(d.items (),key = lambda x:x[1],reverse = True)
print('**********************投票结果如下**********************')
print('根据10位评委的投票,各个选手的票数及成绩为:')
for i in ls:print('  选手 {} 成绩为 {}'.format(id_name[i[0]],100*(i[1]/c)))

运行结果如下:

根据此代码中相应的要点:

该代码使用了time库的sleep函数(t.sleep(s)),其可用于让程序暂停,参数s代表程序停止多少秒后继续执行。

(代码第5/20/23行)

(1条消息) python标准库——random库_·H·976的博客-CSDN博客https://blog.csdn.net/qq_62799602/article/details/126772850?spm=1001.2014.3001.5501此链接下有导入标准库的3种方式及其使用方式,在此不再做过多赘述。

异常处理 :try-except,用于捕获用户输入时的各种错误形式情况,例如:+,?等非数字的输入。

(代码第13~21行)

字典的计数操作:d[i] = d.get(i,0)+1  # 通过字典d的键i返回其值,若键存在则返回相应值,否则返回默认值0。  +1后成为当前投票后的值。

d.get(key,default)  #若键存在则返回相应值,否则返回默认值default

此方法应好好理解后掌握,在字典的应用中d.get()方法十分好用

(代码第16行)

字典的排序: ls = sorted(d.items (),key = lambda x:x[1],reverse = True)

key = lambda x:x[1]  按照字典的值排序

key = lambda x:x[0]  按照字典的键排序

reverse = True  降序排序

reverse = False (默认)升序排序

(代码第24行)

python字典的应用_·H·976的博客-CSDN博客python有关的time库、异常处理、字典的应用https://blog.csdn.net/qq_62799602/article/details/126820331若对字典排序仍有不解可看此篇详细讲解

(若对以上内容仍有疑问可在底下评论或私聊我嗷~)

python字典的应用相关推荐

  1. Python 字典(Dictionary) get()方法

    Python 字典(Dictionary) get()方法 描述 Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值. 语法 get()方法语法: ...

  2. python 字典 的pop 方法

    python 字典pop 方法的作用: 字典 pop() 方法删除字典给定键 key 及对应的值,返回值为被删除的值 字典pop 的语法: pop(key[,default]) demo 练习字典po ...

  3. python字典一键多值_python字典中如何一键多值的写入?

    python字典中如何一键多值的写入? python字典中一键多值写入的方法: 1.循环写入字典key.value.删除指定的键值对: 原文本'jp_url.txt'每行元素以逗号分隔:host_ke ...

  4. python字典{:4}_Python字典101:详细的视觉介绍

    python字典{:>4} 欢迎 (Welcome) In this article, you will learn how to work with Python dictionaries, ...

  5. Python 字典(Dictionary)

    Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在 ...

  6. python字典操作添加_Python字典常见操作实例小结【定义、添加、删除、遍历】

    本文实例总结了python字典常见操作.分享给大家供大家参考,具体如下: 简单的字典: 字典就是键值对key-value组合. #字典 键值对组合 alien_0 ={'color':'green', ...

  7. python 字典代码_Python 字典(Dictionary)

    Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包 ...

  8. python字典(dict)+常用方法操作+列表、元组、集合、字典的互相转换

    python字典(dict)+常用方法操作+列表.元组.集合.字典的互相转换 字典也是 Python 提供的一种常用的数据结构,它用于存放具有映射关系的数据. 为了保存具有映射关系的数据,Python ...

  9. python字典之defaultdict详解

    python字典之defaultdict详解 defaultdict为你的字典设定一个默认值或者默认值的数据类型: defaultdict接受一个工厂函数作为参数,如下来构造: dict =defau ...

  10. python字典练习题

    python字典练习题 写代码:有如下字典按照要求实现每一个功能dict = {"k1":"v1","k2":"v2", ...

最新文章

  1. PHP大文件上传问题
  2. Visual Studio 2015 前瞻 属性初始化赋值!
  3. 【每日scrum】NO.5
  4. 编写歌唱比赛评分_营造园区浓厚文化氛围 三亚崖州湾科技城“最强音”歌唱比赛落幕...
  5. PYTHON笔记 面向对象程序设计
  6. 使用PL/SQL对表进行解锁
  7. Python运维开发工程师养成记
  8. 数据库索引选择的探索(二)之直方图
  9. USACO 2019 February Contest Platinum T3: Mowing Mischief
  10. oracle收回dba权限后的检查,Oracle RAC GI 权限 检查和修复 方法
  11. 回归技术——我看中国软件的发展方向
  12. MySQL数据库实操教程(20)——视图
  13. 帝国cms tag生成html,帝国cms如何自动填写tag标签【亲测】
  14. 微信小程序实现首页图片多种排版布局!
  15. 计算机电路英语词汇,PCB专业英语词汇对照表(大全)
  16. CF1367D 构造
  17. 远程桌面协议报错0xd06解决方案
  18. 当事情推动不了时,投诉或许是一种好的解决方案 | 每天成就更大成功
  19. 餐厅到店点餐系统(APP)
  20. UrlEncode编码

热门文章

  1. 软通动力网易游戏外包项目组测试工程师面试总结
  2. Java设计模式之观察者模式(UML类图分析+代码详解)
  3. spss modeler用决策树神经网络预测ST的股票
  4. Oracle RBO、CBO简介
  5. 小啊呜产品读书笔记001:《邱岳的产品手记-11》第21讲 产品案例分析:Fabulous的精致养成
  6. Java入门云计算:从基础到实践
  7. 初中英语老师必备的Excel小技巧之一-Leo老师
  8. linux内核hook技术之指令覆盖与注入
  9. C/C++编程学习 - 第14周 ⑦ 多边形内角和
  10. 神经网络是如何进行预测的?