第2章习题

点击查看代码
2.1
temp = eval(input("请直接输入华氏温度值: "))
C = (temp - 32) / 1.8
print("转换后的温度是{}C".format(int(C)))
temp = eval(input("请直接输入摄氏温度值: "))
F = 1.8 * temp + 32
print("转换后的温度是{}F".format(int(F)))
点击查看代码
2.2
try:
    while 1:
        money = input("请输入要转换的金额,例子:$2/¥6 的形式,e 表示结束:")
        mode = money[0]

        if mode == '$':
            val = eval(money[1:])
            trans = val * 6
            print('{}->>¥{}'.format(money, trans))
        elif mode == '¥':
            val = eval(money[1:])
            trans = val / 6
            print('{}->>${}'.format(money, trans))
        elif mode == 'e':
            break
        else:
            print("您输入的有误")
except:
    print("您输入的有误")

点击查看代码
2.3
# WeightConvert.py

WeightStr = input("请输入带有符号的重量值:")

if WeightStr[-1] in ['K', 'k']:
    lb = (eval(WeightStr[0:-1]) * 2.2046)
    print("转换后的重量是{:.2f}磅".format(lb))
elif WeightStr[-1] in ['L', 'l']:
    kg = (eval(WeightStr[0:-1]) / 2.2046)
    print("转换后的重量是{:.2f}千克".format(kg))
else:
    print("输入格式错误")
点击查看代码
2.4
import turtle

def draw_snake_segment(t, length, angle, color):
    """绘制蟒蛇的一个小段"""
    t.pencolor(color)  # 设置画笔颜色
    t.circle(length, angle)  # 绘制圆弧
    t.circle(-length, angle)  # 绘制反向圆弧
    t.circle(length, angle / 2)  # 绘制更小的圆弧
    t.fd(length)  # 向前移动
    t.circle(16, 180)  # 绘制更小的圆弧
    t.fd(length * 2 / 3)  # 向前移动

def draw_colorful_snake():
    """绘制彩色蟒蛇"""
    colors = ["red", "orange", "yellow", "green", "blue", "indigo", "violet"]
    turtle.setup(650, 350, 200, 200)
    turtle.penup()
    turtle.fd(-250)
    turtle.pendown()
    turtle.pensize(25)
    turtle.seth(-40)

    for i in range(4):
        draw_snake_segment(turtle, 40, 80, colors[i % len(colors)])
        turtle.fd(40)

turtle.done()
点击查看代码
2.5
from turtle import *
setup(500, 500)
fd(100)
left(120)
fd(100)
left(120)
fd(100)
点击查看代码
2.6
from turtle import *
fd(100)
seth(-120)
fd(100)
seth(120)
fd(100)
seth(60)
fd(100)
seth(-60)
fd(200)
seth(-180)
fd(200)
seth(60)
fd(100)<details>

```
点击查看代码
2.7
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.8
import turtle

def draw_square_spiral():
    # 设置画布
    turtle.setup(600, 600)
    turtle.speed(0)  # 设置绘制速度
    turtle.pensize(2)  # 设置画笔粗细

    # 初始位置和方向
    turtle.penup()
    turtle.goto(0, -200)
    turtle.pendown()
    turtle.seth(0)  # 设置初始方向为正东

    # 绘制正方形螺旋线
    for i in range(100):
        turtle.forward(40 * i)
        turtle.right(90)

    # 完成绘制
    turtle.hideturtle()
    turtle.done()

draw_square_spiral()
posted @ 2025-03-16 17:45  栞栞  阅读(11)  评论(0)    收藏  举报