一、 编程题
1、 结合turtle库使用手册,读懂下列代码,并在jupyter编译器中运行观察结果:
依次分析下代码:
第一行 通过保留字import引用了Python中用于绘制图形的turtle库,as是作为别名之用。
(使用import引用函数库有两种方式,但其对函数的使用方式略有不同 import <库名> | from <库名> import *)
第二行 使用了turtle.setup()函数.turtle。setup(width,height,startx,starty).作用:设置主窗体的大小和位置。
参数如下:width:窗口宽度,如果值为整数,表示像素值,如果为小数,表示窗口宽度与屏幕的比例。
height:窗口高度,如果值为整数,表示像素值,如果为小数,表示窗口高度与屏幕的比例。
startx:窗口左侧与屏幕左侧的像素距离,如果值为None,窗口位于屏幕水平中央。
starty:窗口顶部与屏幕顶部的像素距离,如果值为None,窗口位于屏幕垂直中央。
第三行
第四行 使用了turtle.penup()和turtle.pendown()函数.它们分别表示抬起画笔和落下画笔。
turtle.penup()
别名 turtle.pu(),turtle.up()
作用:抬起画笔,之后移动画笔不绘制形状。 参数:无
turtle.pendown()
别名 turtle.pd(),turtle.down()
作用:落下画笔,之后移动画笔将绘制形状。 参数:无
第五行 使用了turtle.pensize()函数.用于设置画笔尺寸.
turtle.pensize(width)
别名 turtle.width()
作用:设置画笔宽度,当无参数输入时返回当前画笔宽度。
参数如下:
width:设置的画笔线条宽度,如果为None或者为空,则函数返回当前画笔宽度。
第六行 使用了turtle.color()函数.用于给画笔设置颜色。可以用英文名,也可以采用(r,g,b)形式直接输入颜色值。
第九行 使用了turtle.circle()函数.用来绘制一个弧形.
第十一行 使用了turtle.done()函数.用来停止画笔绘制,但绘图窗体不关闭.没有参数.
2、 垂直输出“Hello World”,所有代码不超过两行。
3、 编写一个程序,计算输入数字N的0次方到5次方结果,并依次输出这6个结果,输出结果间用空格分隔。其中:N是一个整数或浮点数。
4、 温度转换: 请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。转换算法如下:(C表示摄氏度、F表示华氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
(1) 输入输出的摄氏度采用大写字母C开头,温度可以是整数或小数,如:C12.34指摄氏度12.34度;
(2) 输入输出的华氏度采用大写字母F开头,温度可以是整数或小数,如:F87.65指摄氏度87.65度;
(3) 不考虑异常输入的问题,输出保留小数点后两位;
(4) 使用input()获得测试用例输入时,不要增加提示字符串。
5、货币转换:
人民币和美元是世界上通用的两种货币之一,写一个程序进行货币间币值转换,其中:
人民币和美元间汇率固定为:1美元 = 6.78人民币。
程序可以接受人民币或美元输入,转换为美元或人民币输出。人民币采用RMB表示,美元USD表示,符号和数值之间没有空格。
注意: 获得输入请使用input()#第二题
for each in "Hello World":
print(each)
print("以下为第二种解法")
print("\n".join("Hello World"))
print("---------------")
#第三题
num = eval(input("请输入一个数字:"))
#如果用户希望输入一个数字(小数或负数),并用程序对这个数字进行计算,可以采用eval(input(<输入提示字符串>))的组合.
#eval()的作用是将输入的字符串转变为Pyhon语句,并执行该语句。
#在这里是将用户输入的字符串转换为数字
for each in range(6):
print(num**each,end=" ")
print()
print("---------------")
#第四题
while 1:
TempStr = input("请输入带有符号(F/f/C/c)的温度值:")
#输出纯字符信息,可以直接将待输入内容传递给input函数.
if TempStr[-1] in ['F','f']:
C = (eval(TempStr[0:-1])-32)/1.8
print("转换后的温度是{:.2f}C".format(C))
#当输出变量值时,需采用格式化输出方式,通过format()方法将待输出变量整理成期望输出的格式.
#这里print()函数采用槽格式和format()方法将变量和字符串结合在一起输出。
break
elif TempStr[-1] in ['C','c']:
F = 1.8*eval(TempStr[0:-1])+32
print("转换后的温度是{:.2f}F".format(F))
#大括号{}表示一个槽的位置,其中内容有字符串后面紧跟的format()方法中的参数C填充
#大括号{:.2f}中的内容表示变量C的输出格式,具体表示输出数值取两位小数值.
break
else:
print("输入格式有误!",end="")
print()
print("---------------")
#第五题
money = input("请输入带符号的货币值(RMB/USD):")
if money[-3:] == "USD":
U = eval(money[0:-3])*6.78
print("转换后的货币值为:{:.2f}RMB".format(U))
elif money[-3:] == "RMB":
R = eval(money[0:-3])/6.78
print("转换后的货币值为:{:.2f}USD".format(R))
else:
print("输入格式有误")