Python实验指导书 马 川 燕山大学计算机教学实验中心 2017.5. 目录 .............................................2程序设计之初窥门径 实验一:PYTHON ...........................................2 实验二:P程序设计之结构与复用YTHON .........................................3 程序设计之组合数据类型实验三:PYTHON 实验四:P程序设计之文件 .................................................4YTHON 实验一:Python程序设计之初窥门径 一、实验目的: 1. 了解Python的基本编程环境,熟悉其主要组成部分和使用。 2. 熟悉turtle库语法元素,了解其绘图坐标体系、画笔控制函数和运动命令函数。通过程序实例,初步掌握Python程序设计的基本概念、编程规则和开发过程。 3. 掌握Python的基本数据类型的概念和使用; 运用Python的标准数学库进行数值计算;掌握字符串类型的格式化操作方法和应用。 二、知识要点: 1、一张图尽览Python: 2.Turtle库语法元素 3.基本数据类型 三、实验内容及步骤: 基础实验: 1. 启动 IDLE,新建文件,请根据课本中内容,将 “蟒蛇绘制”程序逐行输入其中,并运行效果。 2. 正方形螺旋线的绘制。 (1)利用turtle库绘制一个正方形螺旋线,效果如下图所示。 (2)修改上面程序,绘制斜螺旋线,效果如下图所示。 (3) 修改上面程序,绘制彩色斜螺旋线,效果如下图所示。 3.彩色蟒蛇绘制。 修改1中“蟒蛇绘制”程序,对 Python 蟒蛇的每个部分采用不同颜色,绘制一条彩色蟒蛇。(提示:参考彩色斜螺旋线绘制程序。实现方法有很多,按照你自己的思路发挥吧) 程序完成后,上传提交。 4.绘制奥运五环图,其中五种颜色分别为蓝色、黑色、红色、黄色和绿色。注意根据实际效果调整圆形的大小和位置。效果如图所示。请补全绿色环的代码,将程序上传提交。 5.参照课本中带刷新的文本进度条例子,制作一个模拟windows启动界面的文本进度条,执行效果如下图所示。 源码如下: 实验二:Python程序设计之结构与复用 一.实验目的 1.掌握程序的分支、循环等控制结构; 2.掌握random随机库的使用方法; 3.了解程序的异常处理及用法; .掌握函数的定义和调用方法。4. 二.知识要点 1.程序控制结构 2. 函数和代码复用 三 实验内容及步骤之间的整数,让用户通过键盘输入所猜的数,如1.猜数字游戏。在程序中预设一个0-9;小于预设的数,显示“你猜的数字果大于预设的数,显示“你猜的数字大于正确答案”其次,猜对了,真厉害”,小于正确答案”,如此循环,直至猜中该数,显示“你猜了N N是用户输入数字的次数。中中的猜数字游戏,让计算机能够随机产生一个预设数字,范围猜数字游戏续。改编12. 0-100之间,其他游戏规则不变。在6(比如最多只允许猜3. 猜数字游戏再续。用变量maxtimes设置允许猜数字的最大次数提(并提交用for循环改写整个程序,。次maxtimes=6),并在猜错后提示还有几次机会。) 跳出循环示,猜对后可使用break数装为函猜将数字游戏封代了续又续。为了增加码的复用性,游4.猜数字戏之,将允许猜数字的最大次数maxtimes作为参数。在调用GuessSecretGuessSecret(maxtimes)时允许用户自己设置maxtimes,美化程序的输出界面。提交程序文件。 执行效果如下图所示。 5. 递归法绘制科赫曲线。请根据课本中内容,将 “科赫曲线绘制”程序逐行输入其中,按自己的思路进行修改并运行效果,体会递归思想。 实验三:Python程序设计之组合数据类型 一.实验目的 1.了解3类基本组合数据类型。 2.理解列表概念并掌握Python中列表的使用。 3.理解字典概念并掌握Python中字典的使用。 4. 运用jieba库进行中文分词并进行文本词频统计。 二.知识要点 1.知识要点总图 三.实验内容及步骤 1.利用列表实现石头剪刀布游戏。请补全程序并提交。 请思考:winList使用元组实现可以吗?童鞋们,动手试试吧! 2. 利用字典实现大侠个人信息查询程序。请补全程序并提交。 请思考:如何修改程序,使用户只有在输入“exit”的时候才退出程序?诸位,亮亮你的手段吧!提示:可参考1中的石头剪刀布游戏。 程序执行效果如下: 3.利用jieba库对李之仪的《卜算子》进行分词,按以下要求编写程序。 库对李之仪的《卜算子》进行分词,并查看分词结果。jieba利用(1) counts的内容。(2) 对每个单词计数,并保存到字典类型counts中。查看按照单词出现的次数从高到低排序。因为字典类型是无序的,无法排序,因此将(3) 。方法使用详解”)python中列表的sortcounts转为列表类型(列表排序的知识点详见“ 查看排序后的结果。 format调整输出的格式。(4) 为了增强排序后结果的可读性,利用《红楼梦》人物统计。参考课本中《三国演义》人物出场统计的程序,编写程序统计4. 并提交。这里给出参考答案。《红楼梦》中前20位出场最多的人物,薛(王夫人,1061)、、(林黛玉,1291)、(、(贾宝玉,3908)(王熙凤,1611)、(贾母,1429)探(,455)、贾政,523)、(薛姨妈,602)袭人,745)、(贾琏,688)、(平儿、(宝钗,929)、(紫、(刘姥姥,299)、(,288)史湘云,412)、(晴雯,336)、(贾珍鸳鸯春,437)、(,423)、(,264) (香菱(邢夫人,287)、鹃,288)、程序设计之文件Python 实验四: .实验目的:一 1.掌握文件的读写方法以及打开和关闭等基本操作。 2.掌握一二维数据的存储格式和读写方法。 json库进行数据的维度转换。3.运用 知识要点:二. 文件知识要点总图1. 实验内容及步骤三. 在桌面上建立一个以自己学号命名的文件夹,所有实验内容都保存在该文件夹下。(另存为时,保存类型选”里录入如下学生信息,并另存为“学生信息表.csv在1.excel提示:参考教材中操作“城市价格(完成程序后提交。择CSV)。并按以下步骤进行操作,) 指数”的实例 CSV文件中读取数据,去掉内容中的逗号,打印到屏幕。(1) 从”文.csv追加到自动化1701']“学生信息表将数据(2) ['17010002', '赵四', '女', ' 件。 格式。格式转换成JSON.csv(3) 将“学生信息表”由CSV turtle库来动态绘制图形路径。编写程序,根据文件2.data.txt中的数据,使用 请补全程序并提交。程序代码如下, 章课后的“太阳花”?文件,绘制教材中第1data.txt请思考:可否通过修改对代码的一点说明: 其中的map函数用法:第一个参数接收一个函数名,第二个参数接收一个可迭代对象 ls = [1,2,3] rs = map(str, ls) ['1', '2', '3'] 打印结果#. lt = [1, 2, 3, 4, 5, 6] def add(num): return num + 1 rs = map(add, lt) print(rs) #[2,3,4,5,6,7] 3.编写程序将电子邮件EmailAddressBook.txt和电话薄TeleAddressBook.txt合并为一个完整的通讯录AddressBook.txt 给出程序代码如下。. 本文来源:https://www.wddqw.com/doc/30e9ccf9d6d8d15abe23482fb4daa58da1111c35.html