当前位置:文档之家› Python实验指导书

Python实验指导书

Python实验指导书
马川
燕山大学计算机教学实验中心
2017.5
目录
目录
实验一:P YTHON程序设计之初窥门径 (2)
实验二:P YTHON程序设计之结构与复用 (8)
实验三:P YTHON程序设计之组合数据类型 (12)
实验四:P YTHON程序设计之文件 (16)
实验一: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是用户输入数字的次数。

2.猜数字游戏续。

改编1中的猜数字游戏,让计算机能够随机产生一个预设数字,范围在0-100之间,其他游戏规则不变。

3. 猜数字游戏再续。

用变量maxtimes设置允许猜数字的最大次数(比如最多只允许猜6次maxtimes=6),并在猜错后提示还有几次机会。

用for循环改写整个程序,并提交。

(提示,猜对后可使用break跳出循环)
4.猜数字游戏之续了又续。

为了增加代码的复用性,将猜数字游戏封装为函数
GuessSecret(maxtimes),将允许猜数字的最大次数maxtimes作为参数。

在调用GuessSecret时允许用户自己设置maxtimes,美化程序的输出界面。

提交程序文件。

执行效果如下图所示。

5. 递归法绘制科赫曲线。

请根据课本中内容,将“科赫曲线绘制”程序逐行输入其中,按自己的思路进行修改并运行效果,体会递归思想。

实验三:Python程序设计之组合数据类型
一.实验目的
1.了解3类基本组合数据类型。

2.理解列表概念并掌握Python中列表的使用。

3.理解字典概念并掌握Python中字典的使用。

4. 运用jieba库进行中文分词并进行文本词频统计。

二.知识要点
1.知识要点总图
三.实验内容及步骤
1.利用列表实现石头剪刀布游戏。

请补全程序并提交。

请思考:winList使用元组实现可以吗?童鞋们,动手试试吧!
2. 利用字典实现大侠个人信息查询程序。

请补全程序并提交。

请思考:如何修改程序,使用户只有在输入“exit”的时候才退出程序?诸位,亮亮你的手段吧!提示:可参考1中的石头剪刀布游戏。

程序执行效果如下:
3.利用jieba库对李之仪的《卜算子》进行分词,按以下要求编写程序。

(1)利用jieba库对李之仪的《卜算子》进行分词,并查看分词结果。

(2) 对每个单词计数,并保存到字典类型counts中。

查看counts的内容。

(3) 按照单词出现的次数从高到低排序。

因为字典类型是无序的,无法排序,因此将counts 转为列表类型(列表排序的知识点详见“python中列表的sort方法使用详解”)。

查看排序后的结果。

(4) 为了增强排序后结果的可读性,利用format调整输出的格式。

4.《红楼梦》人物统计。

参考课本中《三国演义》人物出场统计的程序,编写程序统计《红楼梦》中前20位出场最多的人物,并提交。

这里给出参考答案。

(贾宝玉,3908)、(王熙凤,1611)、(贾母,1429)、(林黛玉,1291)、(王夫人,1061)、(薛宝钗,929)、(袭人,745)、(贾琏,688)、(平儿,602)、(贾政,523)、(薛姨妈,455)、(探春,437)、(鸳鸯,423)、(史湘云,412)、(晴雯,336)、(贾珍,299)、(刘姥姥,288)、(紫鹃,288)、(邢夫人,287)、(香菱,264)
实验四:Python程序设计之文件
一.实验目的:
1.掌握文件的读写方法以及打开和关闭等基本操作。

2.掌握一二维数据的存储格式和读写方法。

3.运用json库进行数据的维度转换。

二.知识要点:
1.文件知识要点总图
三.实验内容及步骤
在桌面上建立一个以自己学号命名的文件夹,所有实验内容都保存在该文件夹下。

1.在excel里录入如下学生信息,并另存为“学生信息表.csv”(另存为时,保存类型选择CSV)。

并按以下步骤进行操作,完成程序后提交。

(提示:参考教材中操作“城市价格
指数”的实例)
(1)从CSV文件中读取数据,去掉内容中的逗号,打印到屏幕。

(2)将数据['17010002', '赵四', '女', '自动化1701']追加到“学生信息表.csv”文
件。

(3) 将“学生信息表.csv”由CSV格式转换成JSON格式。

2.编写程序,根据文件data.txt中的数据,使用turtle库来动态绘制图形路径。

程序代码如下,请补全程序并提交。

请思考:可否通过修改data.txt文件,绘制教材中第1章课后的“太阳花”?
对代码的一点说明:
其中的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
给出程序代码如下。

Visual Basic实验指导书
20。

相关主题