Python语言程序与基础(第二版)

P56习题部分

2.1实例1的修改,改造实例代码1.1,采用eval(input(<提示内容>)),形式替换现有的输入内容,并使输出的温度值为整数。代码如下:

##2.1温度转换实例 改写
s = eval(input('转换摄氏度请输入:1,转换华氏度请输入:2:'))
def Print(X):
    print ('转换后的温度值是:{:.0f}X'.format(X))

if s == 1:
    TempStr = input('请输入带有符号的温度值:')
    if TempStr[-1] in ['F','f']:
        C = (eval(TempStr[0:-1]) - 32) / 1.8
        Print(C)
elif s == 2:
    TempStr = input('请输入带有符号的温度值:')
    if TempStr[-1] in ['C','c']:
        F = 1.8 * eval(TempStr[0:-1]) + 32
        Print(F)
else:
    print ('输入数字错误')

2.2汇率兑换才程序。按照温度转换程序的设计思路,按照一美元=6人民币汇率编写一个美元和人民币的双向兑换程序。代码如下:

a = input("请输入带有符号的货币值:")
if a[:3] in ['RMB']:
    USD = eval(a[3:]) / 6
    print("转换后的货币值是USD{:.2f}".format(USD))
elif a[:3] in ['USD']:
    RMB = eval(a[3:]) * 6
    print("转换后的货币值是:RMB{:.2f}".format(RMB))
else:
    print("输入格式错误")
    

2.3.实例2的修改,改造实例代码2.1,绘制一条彩色蟒蛇,即在绘制Python蟒蛇的每个半段时,画笔控制颜色发生变化(彩色蟒蛇)。代码如下:

#彩色蟒蛇
import turtle as t

t.setup(850,350,200,200)
t.pu()
t.fd(-350)
t.pd()
t.pensize(25)
t.speed(9.5)
C = ['red','orange','yellow','green','blue','cyan']
t.seth(-40)

for c in range(len(C)):
    t.color(C[c])
    t.circle(40,80)
    t.circle(-40,80)
#头部
t.color('purple')
t.circle(40,80/2)
t.fd(40)
t.circle(16,180)
t.fd(40*2/3)
t.done()

在这里插入图片描述
2.4 等边三角形的绘制。用turtle.seth()函数绘制一个等边三角形。代码:

##等边三角形
import turtle as t
t.pensize(2)
for i in range(3):
    t.seth(120*i)
    t.fd(200)

在这里插入图片描述
2.5 叠加等边三角形的绘制。用turtle.seth()绘制叠边三角形。代码如:

##叠加三角形的绘制
##等边三角形
import turtle as t
t.pensize(2)
t.speed(10)
t.pu()
t.goto(-200,-200)
t.pd()
for i in range(3):
    t.fd(400)
    t.lt(120)
t.fd(200)

t.seth(60)
t.fd(200)
t.seth(180)
t.fd(200)
t.seth (300)
t.fd(200)

在这里插入图片描述
2.6 五角正方形的绘制。利用turtle库函数绘制一个没有角的正方形。代码:

#无角正方形画法

import turtle as t
t.pensize(4)

def Fly(angle):
    t.pu()
    t.fd(50)
    t.seth (angle)
    t.fd(50)
    t.pd()
    t.fd(100)

for i in range(4):
    Fly(90*i)

在这里插入图片描述
2.7 六角形的绘制。利用turtle库函数绘制一个六角形。代码如下:

#六角形绘制
import turtle as t
t.pensize(2)
t.speed(9)

t.lt(30)
t.fd(144)
for i in range(5):
    t.rt(60)
    t.fd(144)

t.fd(144)
t.rt(120)
t.fd(144)
for i in range(5):
    t.lt(60)
    t.fd(144)
    t.rt(120)
    t.fd(144)

在这里插入图片描述
2.8 正方形螺旋线的绘制。代码如下:

#正方形螺旋线

import turtle as t
t.pensize(1)
t.speed(120)

for i in range(143):
    t.lt(90)
    t.fd(3*i)

在这里插入图片描述
感谢观看,如有更简洁的代码方式或者代码有出现问题,留下宝贵意见。

原创文章 27 获赞 34 访问量 2607

猜你喜欢

转载自blog.csdn.net/weixin_46313446/article/details/105262712