【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《Python程序设计实验五》,欢迎阅读!
黄河科技学院 实验报告
学院 信息工程工程学院 班级 18软件工程专升本 课程名称 Python程序设计 学号 1803120006 姓名 郭 航 日 期 2018/12/06 实验成绩 指导教师 刘寒冰
实验五 Python组合数据类型
一、实验目的
(1)理解3类基本组合数据类型; (2)掌握列表的使用; (3)掌握字典的使用。 二、实 验 内 容
1、随机密码生成。编写程序,在26个字母大小写和9个数字组成的列表中随机生成10个8位密码。(提示:可使用随机函数choice())
2、重复元素判定。编写一个函数,接受列表作为参数,如果一个元素在列表中出现不止一次,则返回True,但不要改变原来列表的值,同时编写调用这个函数和测试结果的程序。(提示:可以利用集合元素的无重复性)
3、以文件方式练习运行教材173页的实例代码10.1和10.4,观察运行结果,理解代码含义。
4、文本字符分析。编写程序接收字符串,按字符出现频率的降序打印字符。分别尝试录入一些中英文文章片段,比较不同语言之间字符频率的差别。
5、生日驳论分析。生日驳论指如果一个房间里有23人或以上,那么至少有两个人生日相同的概率大于50%。编写程序,输出在不同的随机样本数量下,23人中至少两人生日相同的概率。(提示:一个样本中包括23个人的生日,生日是随机生成的,生日组成只考虑月和日)
三、实 验 步 骤(提交第1和4题的源代码,并写出实验步骤)
实验5.1
(1)打开IDLE编辑器,按快捷键Ctrl+N打开一个新窗口,在新窗口中输入如下代码:
from random import choice import string def password(): length=8
chars=string.ascii_letters+string.digits return "".join((choice(chars)
for i in range(8))) for i in range(10): print(password())
(2)保存为文件为“实验5.1.py”
(3)按快捷键F5运行程序,运行结果如下:
黄河科技学院 实验报告
实验5.4
(1)打开IDLE编辑器,按快捷键Ctrl+N打开一个新窗口,在新窗口中输
入如下代码:
str = input("请输入要分析的字符串,回车表示结束:") while str != '': counts = {} for ch in str:
counts[ch] = counts.get(ch,0) + 1 #将字典转换为记录列表 items = list(counts.items()) #以记录第2列排序
items.sort(key= lambda x : x[1],reverse= True) for i in range(len(items)): word, count = items[i]
print("{0:<10}{1:>5}".format(word, count))
str = input("请输入要分析的字符串,回车表示结束:")
(2)保存为文件为“实验5.4.py”
(3)按快捷键F5运行程序,运行结果如下:
黄河科技学院 实验报告
四、实验小结
通过本章节的学习,了解了3类基本组合数据类型:序列类型、集合类型、映射类型。熟悉了列表和字典的类型、概念和函数。通过“三国演义”出场统计的练习,学会了jieba库的使用。
实验5.4是通过参考仿照课本“Hamlet”练习和百度查询做出,了解了代码的含义,对字典类型和列表类型更加了解。
本文来源:https://www.wddqxz.cn/039a5032951ea76e58fafab069dc5022abea467f.html