先说明,我的代码都是截屏,你如果想用的话需要手敲一下。
原因不解释,彪悍的人生不需要解释。
实验一
问题1. 调出“The Zen of Python”
1) 练习目标
了解编写优美Python程序所需要关注的一些重要原则
2) 思路提示
import this
问题2. 计算下列数学表达式用Python程序写出来
(1)
(2)
1) 练习目标
掌握内置数值运算操作符和变量赋值
2) 思路提示
注意运算符号所对应的操作符
问题3. 用户输入一个四位自然数,计算并输出其千位、佰位、十位和个位上的数字
1) 练习目标
掌握内置数字类型转换符和input函数的特征
2) 思路提示
注意除法和整除的区别
问题4. 写一个脚本将自己的学号、姓名、年龄、班级等信息以如格式下写入myinf.txt
姓名:郭靖
年龄:27
学号:D2017001
班级:2班
1) 练习目标
掌握基本的输入输出以及文件操作
2) 思路提示
使用open函数,注意转义字符的使用
问题5. 输入三角形的两边长及其夹角,求第三边长
1) 练习目标
math库的调入和使用
2) 思路提示
使用余弦定理
将角换成弧度制
实验二
问题4.生成包含30个随机数平方的列表,随机数取值范围是50~100,然后按其千位数升序排列后,和其对应的随机数一起输出. 如
[6400, 2500, 8100, …]
2500 50
6400 80
8100 90
1) 练习目标
key和lambda在排序中的应用
2) 思路提示
使用列表推导式,sort(key=lambda….)
实验三
问题1.生成100个的随机整数,统计每个整数出现的频率,并按频率从小到大排列
1) 练习目标
掌握字典的基本操作和性质以及sorted的使用
2) 思路提示
利用random、字典对象的get()方法、 sorted()和itemgetter()
问题2. 从键盘输入1000以内的整数n,对其进行因式分解,如
可以以列表的形式输出
1) 练习目标
掌握while循环的使用
2) 思路提示
注意因子都是素数, 可从2开始判断,素数能否被n整除.
问题3. 身体质量指数(Body Mass Index, BMI)是国际上常用的衡量人体肥胖程度和时候健康的重要标准,其定义如下:
我国卫生部给出了国内BMI参考值
分类 |
BMI值(kg/m²) |
偏瘦 |
<18.5 |
正常 |
18.5-24 |
偏胖 |
24-28 |
肥胖 |
>=28 |
输入身高和体重,输出BMI的值及其所属类别。
1) 练习目标
掌握多分支选择结构的应用
2) 思路提示
if 和elif
问题4.从键盘输入两个整数,输出其最大公约数和最小公倍数。
1) 练习目标
循环结构的使用
2) 思路提示
最大公约数可用辗转相除法得到,最小公倍数则用两数的乘积除以最大公约数即可
实验四
问题1.分别格式化输出389的二进制、八进制、十进制、十六进制的表达形式,以及对应的Unicode。要求宽度为30,居中对齐,以‘*’填充
1) 练习目标
掌握字符串的格式化方法
2) 思路提示
利用{}.format()方法
问题2.凯撒密码:凯撒密码是古罗马的凯撒大帝用来对军事情报进行加密的方法,它采用了替换方法对信息中的每一个英文字符替换为在字母表序列中该字符后面第三个字符,对应关系如下:
原文:ab c d e f g h i j k l m n o p q r s t u v w x y z
密文: de f g h i j k l m n o p q r s t u v w x y z a b c
原文字符P,其密文字符C满足如下条件:
C=(P+3)mod26
解密方法反之,满足:
P=(C-3)mod26
编写加密算法,对明文
it was the best of times,it was the worst of times, it was the age of wisdom, it was the age offoolishness, it was the epoch of belief, it was the epoch of incredulity
进行加密。
1) 练习目标
掌握字符串的基本操作
2) 思路提示
使用ord()函数或maketrans()函数和translate()函数
问题3. 输入一段英文,其中有单独的字母I误写成i,请编写程序进行纠正
1) 练习目标
掌握字符串的常用方法
2) 思路提示
使用replace()函数
问题4.有一段英文文本,其中有单词重复了2次,编写程序检查重复的单词并保留一个。例如文本内容为“This is is a desk”,则程序输出为“Thisis a desk”。
1) 练习目标
掌握字符串的常用方法
2) 思路提示
使用split()转换为列表,对列表操作,然后使用join()函数连接
实验五
问题1.输入一段英文,其中有单独的字母i误写成I,请编写程序进行纠正
1) 练习目标
掌握正则表达式和子模式语法
2) 思路提示
使用re.sub
问题2.给定一段文档,查找以k或K字母开头的所有单词
1) 练习目标
掌握正则表达式和字模式语法
2) 思路提示
利用re.complie()方法和while循环
问题3.编写函数,接收两个整参数m和n,返回斐波那契数列中大于m+n的第一个数
1) 练习目标
掌握函数的定义和调用方法
2) 思路提示
使用while循环,注意斐波那契数列的合适的生成方法
问题4.哥德巴赫猜想:编写函数,接收一个偶数,输出两个素数,并且两个素数之和等于原来的偶数,如果有多组,则全部输出。
1) 练习目标
掌握函数的定义和调用方法
2) 思路提示
可以定义两个函数,一个判断是否为素数,一个分解
实验六
问题1.编写函数,判断一个整数是否为素数,并编写主程序调用该函数
1) 练习目标
掌握函数的定义和调用
问题2.编写函数接受一个字符串,分别统计大写字母,小写字母、数字其他字符的个数,以元组的形式返回结果
1) 练习目标
掌握函数的定义和调用
问题3.在Python程序中,局部变量会隐藏同名的全局变量码?验证。
1) 练习目标
了解变量的作用域
问题4.使用lambda表达式定义函数,计算三个整数的平方和并且一个参数默认是5。
1) 练习目标
掌握lambda表达式和默认值参数
实验七
问题1.定义一个圆类Cirlce,能根据半径计算圆积和周长
1) 练习目标
掌握类的定义和属性
问题2. 编写程序, 编写一个学生类, 要求有一个计数器的属性, 统计总共实例化了多少个学生
1) 练习目标
掌握类的定义和使用
问题3.定义一个列表的操作类,包括的方法:
1 列表元素添加
2 按下标访问列表元素
1) 练习目标
了解类的定义和使用
问题4.定义一个学生类。有下面的类属性:
1 姓名
2 年龄
3 成绩(语文,数学,英语)
类方法:
1 获取学生的姓名:
2 获取学生的年龄
3 返回3门科目中最高的分数
通过实例化对象来测试
1) 练习目标
掌握类的定义和方法