安徽理工大学python 复习资料

[复制链接]
查看337 | 回复0 | 2023-5-7 12:22:34 | 显示全部楼层 |阅读模式
第 2 章 Python 程序实例解析
2.1 实例 1:温度转换
[2.1]: (1) 收支记录:公司所有部门的收支记录采用计算机录入并管理;
(2) 分析比较:对收支历史数据进行比较分析;
(3) 财务审计:计算机辅助找到财务漏洞。
[2.2]: Input: 《红楼梦》全文;
Process:对全文分词,找到其中的人物名称,统计人物名称出现的次数并排序;
Output:按照从高到低顺序输出排序后的人物名称。
[2.3]: 模糊或主观性很强的问题、鉴赏类问题、纠纷类问题等。
2.2 Python 程序语法元素分析
[2.4]: C
[2.5]: 出现过的保留字:
import、from:用于导入模块;
in:判断变量是否在序列中;
not:表示“不是”,可用于逻辑非操作,表达式运算;
and:表达式运算,逻辑与操作;
if、elif、else:分支语句;
while:用于循环;
def:定义函数或方法;

没有出现的保留字:
lambda:生成简写函数的 lambda 表达式;
as:名称转换;
is:表示“是”,用于表达式操作;
or:表示“或”,用于逻辑或和表达式运算;第 8 页/共 79 页
for:用于循环;
try、except、finally:用于异常捕捉及处理;
with:用于上下文管理;
assert:表示断言,用于判断一个变量或一个表达式的值是否为真;
break:表示中断;
class:用于定义类;
continue:用于执行下一次循环;
del:用于删除变量或序列的值;
return:用于函数返回结果;
yield:用于从函数依次返回值;
raise:用于抛出异常;
nonlocal:用于函数嵌套定义时外层数据在内层的表示;
global:表示全局变量;
None:表示“空”;
True:表示“真”;
False:表示“假”;
[2.6]: print(input())。
[2.7]: 如果允许变量名开头是数字,则无法区分变量名和数字类型,例如:如果变量名 091
合法,则程序无法区分这个变量和数字 091。另外,有些数字可能含有字母,如浮点数 1E10。
程序设计语言不能存在歧义,因此,需要约定变量名开头不能是数字,以便区分变量与数字。
2.3 实例 2:Python 蟒蛇绘制
[2.8]: 颜色由紫色变为紫罗兰色,看起来变浅了。
[2.9]: 蟒蛇的长度变长了。
[2.10]: 画笔在一开始的平移时画出了一条细线。因为注释了 penup()后,画笔不会抬起,
每次移动都相当于画线。
2.4 turtle 库语法元素分析
[2.11]: 第 9 页/共 79 页
1
2
import turtle
turtle.fd(50)
[2.12]:
1
2
import turtle
turtle.circle(40)
[2.13]:
1
2
3
4
5
6
7
8
import turtle
for i in range(9):
turtle.circle(10 + 10*i)
turtle.right(90)
turtle.penup()
turtle.fd(10)
turtle.pendown()
turtle.left(90)
程序练习题
[2.1]: 将原程序改写为两个独立程序,如下:
1
2
3
temp = eval(input("请直接输入华氏温度值: "))
C = (temp - 32)/1.8
print("转换后的温度是{}C".format(int(C)))
1
2
3
temp = eval(input("请直接输入摄氏温度值: "))
F = 1.8*temp + 32
print("转换后的温度是{}F".format(int(F)))
[2.2]:
1
2
3
4
try:
while 1:
money=input("请输入要转换的金额,例子:$2/¥6 的形式,e 退出:")
mode=money[0]5 if mode == '$':
6 val=eval(money[1:])
7 trans=val*6
8 print('{}->>¥{}'.format(money,trans))
9 elif mode == '¥':
10 val=eval(money[1:])
11 trans=val/6
12 print('{}->>${}'.format(money,trans))
13 elif mode =='e':
14 break
15 else:
16 print("您输入的有误")
17 except:
18 print("您输入的有误")
19
[2.3]:
1 import turtle
2
3 def Snake1(rader, angle, leng):
4 for i in range(leng):
5 turtle.circle(rader, angle)
6 turtle.circle(-rader, angle)
7
8 def Snake2(rader,angle, neck):
9 turtle.circle(rader, angle/2)
10 turtle.fd(rader)
11 turtle.circle(neck + 1, 180)
12 turtle.fd(rader * 2/3)
13
14 def main():
15 turtle.setup(1200, 200, 0, 0)
16 '''turtle.seth(180)
17 turtle.up()
第 10 页/共 79 页第 11 页/共 79 页
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
fd(400)
turtle.seth(0)
turtle.pd()'''
size = 30
turtle.pensize(size)
turtle.seth(-40)
turtle.pencolor("yellow")
Snake1(40, 80, 1)
turtle.pencolor("black")
Snake1(40, 80, 1)
turtle.pencolor("pink")
Snake1(40, 80, 1)
turtle.pencolor("blue")
Snake1(40, 80, 1)
turtle.pencolor("red")
Snake2(40, 80, size/2)

main()
[2.4]:
1
2
3
4
5
6
7
from turtle import *
setup(500,500)
fd(100)
left(120)
fd(100)
left(120)
fd(100)
[2.5]:
1
2
3
4
from turtle import *
fd(100)
seth(-120)
fd(100)第 12 页/共 79 页
5
6
7
8
9
10
11
12
13
14
seth(120)
fd(100)
seth(60)
fd(100)
seth(-60)
fd(200)
seth(-180)
fd(200)
seth(60)
fd(100)
[2.6]:
1
2
3
4
5
6
7
8
9
10
from turtle import *
setup(500,500)
for i in range(4):
up()
fd(20)
pd()
fd(160)
up()
fd(20)
right(90)
[2.7]:
1
2
3
4
5
6
7
8
9
from turtle import *
up()
setpos(-150,20)
down()
left(30)
fd(100)
left(60)
for i in range(5):
fd(100)第 13 页/共 79 页
10
11
12
13
14
15
16
17
18
right(120)
fd(100)
left(60)
fd(100)
right(120)
fd(100)
for n in range(6):
fd(100)
right(60)
[2.8]:
1
2
3
4
5
6
7
8
9
10
11
from turtle import *
left(90)
length = 5
speed = 20
for i in range(30):
fd(length)
left(90)
fd(length)
left(90)
length += 5
fd(length)
[2.9]:
1
2
3
4
5
6
7
8
9
from turtle import *
setup
colormode(255)
pensize(20)
pencolor(255,255,255)
speed(1000)
def changedraw():
penr=254
for i in range(100):第 14 页/共 79 页
10
11
12
13
14
15
16
17
circle(100,1)
penr-=1
pencolor((penr,penr-1,penr-2))
for u in range(100):
circle(-100,1)
penr-=1
pencolor((penr,penr-1,penr-2))
changedraw()

请点击此处下载

查看状态:需购买或无权限

您的用户组是:游客

文件名称:课后习题答案.pdf 
下载次数:7  文件大小:1.57 MB 
下载权限: 不限  [金币充值]   [开通会员]   [赚金币]




评分

参与人数 1金币 +5 收起 理由
admin + 5 感谢分享,奖励5个金币,期待更多优质内容.

查看全部评分

相关帖子

您需要登录后才可以回帖 登录 | 立即注册 微信登录 手机动态码快速登录

本版积分规则