当前位置:首页 » 《随便一记》 » 正文

《python语言程序设计基础》(第二版)第二章课后习题参考答案

29 人参与  2024年03月28日 12:10  分类 : 《随便一记》  评论

点击全文阅读


第二章 Python程序实例解析

文章目录

2.1 温度转换2.2 汇率兑换2.3 绘制彩色蟒蛇2.4 等边三角形的绘制2.5 叠加等边三角形的绘制2.6 无角正方形的绘制2.7 六边形的绘制2.8 正方形螺旋线绘制2.9 自定义蟒蛇绘制

2.1 温度转换
tem = int(input("请选择温度的单位(华氏度为1,摄氏度为2):"))TempStr = eval(input("请输入温度值:"))if tem == 1:    C = (TempStr - 32) / 1.8  # 计算摄氏度    print("转换后的温度是{:.0f}C".format(C))elif tem == 2:    F = 1.8 * TempStr + 32  # 计算华氏度    print("转换后的温度是{:.0f}F".format(F))else:    print("输入错误!")
2.2 汇率兑换
try:    money = input("请输入金额(如:1¥/1$):")    if money[-1] in ['$']:        rmb = eval(money[0:-1]) * 6        print("{}->>{}¥".format(money, rmb))    elif money[-1] in ['¥']:        dollar = eval(money[0:-1]) / 6        print("{}->>{}$".format(money, dollar))except:    print("输入错误!")

优化:

try:    money = input("请输入金额(如:1¥/1$):")    currency = money[-1]    amount = eval(money[0:-1])    if currency == '$':        rmb = amount * 6        print("{}->>{}¥".format(money, rmb))    elif currency == '¥':        dollar = amount / 6        print("{}->>{}$".format(money, dollar))    else:        print("输入格式错误!")except:    print("输入错误!")

优化的主要改动:

将货币符号和金额分离出来,使代码更加清晰易读。将条件判断改为根据货币符号进行判断,避免重复判断。
2.3 绘制彩色蟒蛇
import turtle# 设置画布大小和位置turtle.setup(650, 350, 200, 200)# 抬起画笔,移动到起始位置turtle.penup()turtle.fd(-250)# 落下画笔,设置画笔宽度和颜色,调整方向turtle.pendown()turtle.pensize(25)turtle.seth(-40)# 循环绘制蟒蛇的每一段colors = ['red', 'orange', 'yellow', 'green', 'blue', 'purple']for i in range(4):    turtle.pencolor(colors[i % len(colors)])  # 设置画笔颜色    turtle.circle(40, 80)  # 绘制大圆弧    turtle.circle(-40, 80)  # 绘制小圆弧# 绘制蟒蛇头部turtle.pencolor(colors[4 % len(colors)])  # 设置画笔颜色turtle.circle(40, 80 / 2)  # 绘制半个大圆弧turtle.fd(40)  # 前进一段距离turtle.circle(16, 180)  # 绘制半个小圆弧turtle.fd(40 * 2 / 3)  # 前进一段距离# 关闭窗口turtle.done()
2.4 等边三角形的绘制
代码一:
import turtleturtle.forward(100)    # 向前走100个像素turtle.left(120)       # 左转120度turtle.forward(100)turtle.left(120)turtle.forward(100)turtle.done()          # 结束绘制,显示图形
代码二:
import turtle# 创建turtle对象t = turtle.Turtle()# 设置画笔的粗细和颜色t.pensize(3)t.pencolor("blue")# 绘制等边三角形for i in range(3):    t.forward(100)   # 前进100像素    t.left(120)      # 左转120度# 结束绘画turtle.done()
2.5 叠加等边三角形的绘制
# 导入 turtle 库的所有函数from turtle import *# 向前移动 100 像素fd(100)# 逆时针旋转 120 度,再向前移动 100 像素seth(-120)fd(100)# 逆时针旋转 120 度,再向前移动 100 像素seth(120)fd(100)# 逆时针旋转 60 度,再向前移动 100 像素seth(60)fd(100)# 逆时针旋转 60 度,再向前移动 200 像素seth(-60)fd(200)# 逆时针旋转 180 度,再向前移动 200 像素seth(-180)fd(200)# 逆时针旋转 60 度,再向前移动 100 像素seth(60)fd(100)done()
2.6 无角正方形的绘制
from turtle import *# 设置画布大小为 500*500setup(500, 500)for i in range(4):    # 提笔,向前移动20像素    up()    fd(20)    # 下笔,向前移动160像素    pd()    fd(160)    # 提笔,向前移动20像素    up()    fd(20)    # 向右旋转90度    right(90)done()
2.7 六边形的绘制
from turtle import *# 将画笔抬起,移动到起始位置,再将画笔放下up()setpos(-150, 20)down()# 旋转画笔方向,开始画第一个等边三角形left(30)fd(100)left(60)for i in range(5):    fd(100)    right(120)    fd(100)    left(60)# 画出最后一个等边三角形和最后的线段fd(100)right(120)fd(100)for n in range(6):    fd(100)    right(60)done()
2.8 正方形螺旋线绘制
import turtle# 设置初始值length = 5angle = 90increment = 2# 创建画布turtle.setup(600, 600)# 创建画笔pen = turtle.Pen()pen.speed(0)# 绘制正方形螺旋线for i in range(100):    pen.forward(length)    pen.left(angle)    length += incrementturtle.done()
2.9 自定义蟒蛇绘制
from turtle import *# 设置画布大小和颜色模式setup(800, 800)colormode(255)# 设置画笔大小和速度pensize(20)speed(10)def draw_snake():    # 抬起画笔,设置初始位置为屏幕中心,放下画笔    penup()    setpos(0, 0)    pendown()    # 绘制蟒蛇    for i in range(50):        forward(2 * i)  # 前进距离随着i的增加而增加        left(20)  # 左转20度        # 随着绘制的进度改变颜色        pencolor((255 - i, 50, i))    hideturtle()  # 隐藏画笔draw_snake()  # 调用函数绘制蟒蛇done()  # 保持窗口不关闭,直到手动关闭

点击全文阅读


本文链接:http://zhangshiyu.com/post/87049.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 我无名分,我不多嗔小说完结篇(陆景铄林悠悠)(我无名分,我不多嗔)全书无套路阅读无广告小说大结局
  • 奈何春风不曾渡我虐心反转_童烟沈叙白陆依在线看_小说后续在线阅读_无删减免费完结_
  • 鹿雪附加完整在线阅读(小祖宗她带着双宝闹翻天)最近更新列表
  • 你要战功我给你,妖兽入侵你哭啥高质量好文叶天凌筱完本_你要战功我给你,妖兽入侵你哭啥高质量好文(叶天凌筱)
  • 夫君和小三霸占了我的将军府,我杀疯了阅读_雪儿谭绍木兰全集_小说后续在线阅读_无删减免费完结_
  • 鹿溪小说(鹿溪)终章+番外(穿进恐怖游戏后,我和反派HE了)一口气阅读
  • 完结文留给儿子的副卡月月刷爆,他却因睡桥底被送进收容所列表_完结文留给儿子的副卡月月刷爆,他却因睡桥底被送进收容所(娄墨霆宋佑轩)
  • 你活着,却死在我等你的第三年后续+番外_谨言佳佳温以宁全集_小说后续在线阅读_无删减免费完结_
  • 相思溺于夏时雨小说(裴景澈初念可)章节目录+起始篇章(相思溺于夏时雨)全章无套路在线
  • 未婚夫重生归来叫停手术,把剥开肚子的我困在手术台上40分钟(裴临渊阮离歌)
  • 完结文离婚是你提,净身出户你又哭什么精彩分享列表_完结文离婚是你提,净身出户你又哭什么精彩分享(苏铭余素伊)
  • 全书浏览哥哥重生救我,我带队灭了组织!(陈致远陈知韫)_哥哥重生救我,我带队灭了组织!(陈致远陈知韫)全书结局

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1