Python小测试_4

  • 格式:pdf
  • 大小:119.68 KB
  • 文档页数:3

第三周
A......
1.编写Python程序绘制箭靶的图形,应该按照什么顺序画这些圆?·由大到小
2.下面哪些选项是正确的?【pycharm上运行】
int("5.4")·int('5')·float("5.4")int('5.4')float("5five")·int("5")·float("5")
3.defdate(year,month):【pycharm上运行】
"""
给定year和month两个参数,返回一个字符串,形式为year-month。

例如当year为2015,month为10的时候,返回字符串"2015-10",
"""
return???
print(date(2015,10))
·str(year)+"-"+str(month)
4.仔细阅读下面的描述信息,将其转换为Python程序。

【pycharm上运行】
创建一个300*300像素的画布,画两个圆,线宽均为10像素,颜色为白色,半径为20像素。

其中一个圆的坐标为
(90,200),另一个圆的坐标为(210,200)。

再画一条红色的直线,线宽为40像素,起始坐标和终止坐标分别为
(50,180)和(250,180)。

然后画两条线宽为5像素,颜色为红色的直线,第一条起始和终止坐标分别为(55,170)和(90,120),第二条线起始和终止坐标分别为(90,120)和(130,120)。

最后再画一条线宽为140像素,颜色为红色的直线,
起始坐标为(180,108),终止坐标为(180,160)。

运行你的代码,产生的图像是什么?·汽车
5.在SimpleGUITk中,绘制图形的事件处理函数的参数是什么?·画布对象(通常起名为canvas)
6.请问draw_circle,draw_image,draw_text,draw_line等函数应该在程序的哪一部分被调用?
·在可以访问到画布对象(canvas)的函数中
7.当你用draw_text()在画布上绘制文字的时候,如果你设置的文本显示位置超出了画布的坐标,会发生什么事情?
(你可以在PyCharm中进行测试后再作答!)·部分或没有文本显示出来,文本显示的位置只有在画布内才会显示出来。

8.Python中哪个操作符可以将两个字符串连接成一个字符串,例如“我正在”和“学习python”连接后成为"我正在学习python"。

(建议在idle或PyCharm中对每一个选项进行测试后再作答!)·+
9.假设画布宽为400像素,高为300像素。

要求画出画布的对角线,线的颜色为黄色,线宽为10像素。

下面哪几条语句能够完成?
canvas.draw_line((400,400),(300,300),10,"yellow")·canvas.draw_line((400,0),(0,300),10,"yellow")
canvas.draw_line((300,0),(0,400),10,"yellow")·canvas.draw_line((0,0),(400,300),10,"yellow")
canvas.draw_line((300,300),(400,400),10,"yellow")
10.计算下列字符串的长度?【pycharm上运行】
1111l1111l1111l1111l111111*********l11l1l111ll1ll11l111l111l111l111111111l1111l111l111l111l111l1111111
请使用内置函数len统计该字符串的长度,将结果填入下列文本框中。

·102
B....
1.…
timer=simplegui.create_timer(1000,timer_handler)
timer.start()

下列描述中那些是正确的?
·上述代码创建了一个计时器timer,其时间间隔为1000毫秒
上述代码创建了一个计时器timer,每间隔1000毫秒启动一次计时器
上述代码创建了一个计时器timer,其时间间隔为1000秒
·上述代码创建了一个计时器timer,每间隔1000毫秒调用一次timer_handler
2.Python中,函数time.time()用来获得当前时间,其返回值的时间单位是下列哪个选项?·秒
3.当下面代码被执行时,timer_handler会被调用多少次?【pycharm上运行】
import simpleguitk as gui
def timer_handler():

timer=gui.create_timer(100,timer_handler)
timer.start()
虽然timer_handler的函数体没有给出,但是这对做这道题并没什么影响。

建议你在PyCharm或者idle中补全代码测试运行后提交你的答案。

·不确定,它将重复调用直到程序结束
4.Python中,time模块提供了各种操作时间的函数(请在Pycharm中导入time模块:import time),【pycharm上运行】其中函数time.time()返回的是一个float型的数字,该数字表示的是从某个起始时间(×年×月×日×时×分×秒)
到当前时间经过的秒数。

请编写程序计算该起始时间的年份,在下面的输入框中输入年份(如2015)。

·1970
5.考拉兹猜想(Collatz conjecture),也叫奇偶归一猜想,是1927年提出的猜想,至今仍然未解。

【pycharm上运行】考拉兹猜想的内容是:对于每一个正整数,如果它是奇数,则对它乘3再加1,如果它是偶数,则对它除2。

这样循环,最终结果都能得到1。

例如初始数字n=6,得出序列为6,3,10,5,16,8,4,2,1(序列中最大的数是16)。

当n=11时,得出序列为11,34,17,52,26,13,40,20,10,5,16,8,4,2,1(序列中最大数为52)。

写一个Python程序,实现考拉兹猜想。

当初始数字为111时,输出序列中最大的数字是哪一个?请把结果写在下面的输入框中:·9232
6.如果想要用timer创建1000个事件,下列哪种方法是可行的?
·在程序中声明一个全局变量counter,在timer事件处理函数中声明为global,并且增加计数器counter,通过判断counter 的大小停止timer。

7.当Python程序中导入simpleguitk模块时,就不能在”Python在线学习助手“中进行调试了,请问这是为什么?
·当前“Python在线学习助手”还不支持simpleguitk模块
8.import simpleguitk as gui【pycharm上运行】#全局变量
result=1
iteration=0
max_iterations=10
def init(start):
"""初始化变量n."""
global n
n=start
print("Input is",n)#n必须是非负数
def get_next(current):
#利用当前的计算结果current,计算下一次的结果,并返回
return0.5*(current+n/current)
#timer事件程序
def update():
global iteration,result
iteration+=1
#当迭代次数大于最大迭代次数时停止迭代
if iteration>=max_iterations:
timer.stop()
print("Output is",result)
else:
result=get_next(result)
#注册定时器事件
timer=gui.create_timer(1,update)
#开始程序
init(52)
timer.start()
上述代码是将update函数执行了10次,得到了关于输入变量n的一种运算结果,阅读并运行上述代码,
请选择这段代码运行的结果类似于哪种数学运算?建议在PyCharm或者idle中测试后选择结果。

·求n的算数平方根
9.SimpleGUITk中,一个程序最多可以运行多少个计时器?·多个
10.要启动计时器timer,应该执行下面的哪个操作?·timer.start()。