第二章作业

2.1整数温度转换器
TempStr = input("请输入带有符号的温度值:") if isinstance(TempStr, str) and TempStr[-1] in ['F', 'f']: C = int((float(TempStr[0:-1]) - 32) / 1.8) print(f"转换后的温度是{C}C") elif isinstance(TempStr, str) and TempStr[-1] in ['C', 'c']: F = int(1.8 * float(TempStr[0:-1]) + 32) print(f"转换后的温度是{F}F") else: print("输入格式错误")
2.2汇率兑换程序(1美元=6人民币汇率)
CurrencyStr = input("请输入带有货币符号的金额(格式如 100USD 或 600CNY):") if CurrencyStr[-3:].upper() == 'USD': CNY = eval(CurrencyStr[0:-3]) * 6 print(f"{CurrencyStr} 可兑换为 {CNY}CNY") elif CurrencyStr[-3:].upper() == 'CNY': USD = eval(CurrencyStr[0:-3]) / 6 print(f"{CurrencyStr} 可兑换为 {USD}USD") else: print("输入格式错误")
2.3重量转换程序(1千克=2.2046磅)
WeightStr = input("请输入带有单位的重量(格式如 10kg 或 22lb):") if WeightStr[-2:].lower() == 'kg': lb = eval(WeightStr[0:-2]) * 2.2046 print(f"{WeightStr} 可转换为 {lb}lb") elif WeightStr[-2:].lower() == 'lb': kg = eval(WeightStr[0:-2]) / 2.2046 print(f"{WeightStr} 可转换为 {kg}kg") else: print("输入格式错误")
2.4彩色蟒蛇
``import turtle
import random

turtle.setup(650, 350, 200, 200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.seth(-40)

colors = ["red","blue", "green", "yellow", "purple"] # 定义颜色列表
for i in range(4):
turtle.pencolor(random.choice(colors)) # 随机选择画笔颜色
turtle.circle(40, 80)
turtle.pencolor(random.choice(colors))
turtle.circle(-40, 80)
turtle.pencolor(random.choice(colors))
turtle.circle(40, 80 / 2)
turtle.fd(40)
turtle.pencolor(random.choice(colors))
turtle.circle(16, 180)
turtle.fd(40 * 2 / 3)
turtle.done()
2.5等边三角形的绘制import turtle

向前移动指定距离绘制第一条边

turtle.fd(100)

向左旋转120°

turtle.left(120)

向前移动指定距离绘制第二条边

turtle.fd(100)

向左旋转120°

turtle.left(120)

向前移动指定距离绘制第三条边

turtle.fd(100)

turtle.done()
2.6叠加等边三角形的绘制import turtle
turtle.fd(200)
turtle.left(120)
turtle.fd(200)
turtle.left(120)
turtle.fd(200)
turtle.penup()
turtle.goto(50,85)
turtle.pendown()
turtle.done()
turtle.left(120)
turtle.fd(100)
turtle.left(240)
turtle.fd(100)
turtle.left(240)
turtle.fd(100)
2.7六角形的绘制import turtle

创建turtle对象

t = turtle.Turtle()
t.right(30)

绘制第一个三角形

for _ in range(3):
t.forward(150)
t.right(120)

移动画笔位置

t.penup()
t.goto(90, 0) # 移动到合适的起始点,这里的坐标是根据图形和边长估算得出
t.pendown()
t.right(60)

绘制第二个三角形

for _ in range(3):
t.forward(150)
t.right(120)

保持图形窗口显示

turtle.done()
2.8正边形螺旋线的绘制import turtle

设置画笔初始方向为向上(90度)

turtle.left(90)

初始线段长度

length = 5

设置画笔移动速度

turtle.speed(20)

for i in range(30):
# 向前绘制当前长度的线段
turtle.forward(length)
# 向左转90度
turtle.left(90)
# 再次向前绘制当前长度的线段
turtle.forward(length)
# 向左转90度
turtle.left(90)
# 每次循环让线段长度增加5,以形成螺旋效果
length += 5

保持图形窗口显示

turtle.done()
``

posted @ 2025-03-17 10:11  无聊了多少人  阅读(6)  评论(0)    收藏  举报