资源简介 中小学教育资源及组卷应用平台4.1.1Python的常量和变量-粤教版(2019)高中信息技术必修一练习学校:___________姓名:___________班级:___________考号:___________一、选择题1.下面()是Python合法的变量名A.int32B.40XLC.selfD.name【答案】ACD【解析】【详解】本题主要考查Python变量的命名。Python变量的命名不能以数字开头(可以以下划线或字母开头),不能包含特殊符号,不能是关键字,故本题选ACD选项。2.关于程序中的变量,以下说法中错误的是()。A.将数据存入某变量后,读取该变量中的值,不会改变该变量的值B.将数据存入某变量以后就不能将新的数据存入该变量C.将数据存入某变量以后可以将新的数据存入该变量D.在一个问题的计算过程中,可能需要使用多个变量【答案】B【解析】【详解】本题考查的是变量相关知识。变量是指在程序执行过程中其值可能随时发生改变的存储单元或数据。将数据存入某变量以后可以将新的数据存入该变量,故选项B错误。3.下列选项中,不属于Python特点的是()。A.面向对象B.运行效率高C.可读性好D.开源【答案】B【解析】【分析】【详解】本题考查Python特点的相关知识点Python是一门面向对象、可读性好、开源的语言。因为是高级语言,不具备运行效率高的特点。故本题选B选项【来源:21·世纪·教育·网】4.有python程序如下a=int(input())b=int(input())c=input()ifc=='+':print(a+b)elifc=='-':print(a-b)elifc=='':print(ab)elifc=='/':print(a/b)else:print(“输入错误,请重试”)当程序运行后,小新依次输入92程序输出结果应为()A.18B.11C.7D.4【答案】A【解析】【详解】本题考查Python程序段。当程序运行后,小新依次输入92,即a=9,b=2,c=,则elifc==‘’:成立,执行print(ab),结果为18,故本题选A。5.下面是小新在某道编程题中定义的变量,哪个变量名是不合法的()A.apple_Prince3B._mathC.3appleD.Apple【答案】C【解析】【详解】本题考查python变量名命名规则。Python语言的标识符必须以字母,下画线(_)开头,后面可以跟任意数目的字母、数字和下画线(_)。此处的字母并不局限于26个英文字母,可以包含中文字符、日文字符等。故本题选C。2·1·c·n·j·y6.在python中,运行下列程序,正确的结果是()s=0foriinrange(1,5):s=s+iprint("i=",i,"s=",s)A.i=4s=10B.i=5s=10C.i=5s=15D.i=6s=15【答案】A【解析】【分析】【详解】本题考查Python程序实现。变量i的范围是从1到4,当i=4时,跳出循环,此时s=0+1+2+3+4=10。故本题选A选项7.小新编制了一个python程序如下,但程序无法执行,你帮他找出程序中一共有几处错误()1a=3b=input()c=a+bprint("c")A.1B.2C.3D.4【答案】C【解析】【分析】【详解】本题考查Python程序语法Python变量命名不能以数字开头、变量b、c必须先定义后使用。故有3处错误,故本题选C选项8.在python中,以下哪个选项a的数据类型为整型()A.a=5B.a=input()C.a='5'D.a=5.0【答案】A【解析】【详解】本题考查Python数据类型。Python数据类型有字符串,布尔类型,整数,浮点数等。a=5,a为整数型;a=‘5’,则a为字符串;a=5.0,则a为浮点数。故本题选A。9.以下哪项是一个绘图库模块()A.numpyB.matplotlibC.plotD.arange【答案】B【解析】【详解】本题考查Python相关知识。NumPy(NumericalPython)是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵。Matplotlib是一个Python的2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。plot和arange是python中的函数。故本题选B。21cnjy.com10.函数如下defchanageInt(number2):number2=number2+1print("changeInt:number2=",number2)#调用number1=2chanageInt(number1)print("number:",number1)打印结果哪项是正确的()A.changeInt:number2=3number:3B.changeInt:number2=3number:2C.number:2changeInt:number2=2D.number:2changeInt:number2=3【答案】B【解析】【详解】本题考查Python相关知识。chanageInt(number1)将number1代入自定义函数chanageInt中,因为number1=2,所以函数中number2=3。打印函数print("changeInt:number2=",number2),得到changeInt:number2=3,number1的值没变,所以本题选B。21·世纪教育网11.以下关于模块说法错误的是()A.一个xx.py就是一个模块B.任何一个普通的xx.py文件可以作为模块导入C.模块文件的扩展名不一定是.pyD.运行时会从制定的目录搜索导入的模块,如果没有,会报错异常【答案】C【解析】【详解】本题考查python相关知识。python模块定义:逻辑上来说模块就是一组功能的组合。实质上一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀。模块文件的扩展名一定是py,故本题选项C的说法错误。12.导入模块的方式错误的是()A.importmoB.frommoimportC.importmoasmD.importmfrommo【答案】D【解析】【详解】本题考查Python相关知识。导入模块的方式可以是importmo,frommoimport或者importmoasm。选项D是错误的导入模块方式。故本题选D。13.下列关于变量的说法,错误的是()。A.程序中的变量是计算过程中要用到的数据的存储单元B.在算法的执行过程中可以读取变量的值,也可以将数据存储到指定的变量中C.对变量的赋值操作将改变其原来的值D.数据存储到某个变量,当数据被读取后,变量中的数据将变为空【答案】D【解析】【详解】本题考查的是变量相关知识。是指在程序执行过程中其值可能随时发生改变的存储单元或数据。数据存储到某个变量,当数据被读取后,变量中的数据不变。故选项D错误。21教育网二、操作题14.以下是牛顿迭代程序,认真阅读,填写横线内容.importmatha=float(input("请输入方程系数a_________:"))b=float(input("请输入方程系数b:"))c=float(input("请输入方程系数c:"))d=bb-4acif___________:x1=(-b+math.sqrt(d))/(2a)x2=(-b-math.sqrt(d))/(2a)print("方程有两个不同的解",x1,x2)elif____________:x1=-b/(2a)print("方程有两个相同的解",x1)else:print("方程无解")【答案】①(!=0)②d>0③d==0【解析】【详解】本题考查Python相关知识。(1)一元二次方程要求系数a!=0,故填入(!=0)。(2)如果bb-4ac>0,则有两个解,故填入d>0。(3)当d=0时,方程只有一个解,故填入d==0。www.21-cn-jy.com15.listque=[]#定义列表listque存储订单x=0while(x!=4):#当x=!4时,执行循环print('1.添加订单')print('2.发货')print('3.查看订单列表')print('4.退出')x=int(input("输入你的选择:"))#输入选择项ifA:y=input("输入订单编号:")#输入订单编号B#在列表listque中添加订单号elifx==2:C#如果订单列表为空print("订单列表为空")else:print("发货单号:"+listque.pop(0))elifx==3:print("等待发货:",listque)#查询列表listque中的订单号print()input("运行完毕,请按回车键退出...")(1)此列表,定义的是(_____)列表。(从“空、非空”里选填)(2)补充划线A处的内容____________________(3)补充划线B处的内容____________________(4)补充划线C处的内容____________________【答案】空x==1listque.append(y)iflen(listque)==0:【解析】【详解】本题考查Python相关知识。(1)根据listque=[],定义的是空列表。(2)代码第一空,x==1,代表添加订单操作。(3)第二空在列表listque中添加订单号y,则listque.append(y)(4)第三空,如果订单列表为空,则iflen(listque)==0。16.下面是随机点名器的代码设计,大致可分为四个模块。一是导入相应模块,二是窗体界面元素的产生及布局和有关属性设置,三是打开“点名册.txt”,读取并保存姓名数据,四是设计两个按钮的单击事件代码。以下是部分代码,认真阅读,补充完成下列程序。www-2-1-cnjy-comfrom______________#导入tkinter模块importtkinter.messagebox#导入弹窗库模块importrandom#导入随机数模块importdatetime#导入日期时间模块root=Tk()#创建主窗口root.title("随机点名器")#设置窗口标题root.geometry('808x280+300+200')#设置窗口大小及位置root.resizable(0,0)#禁止调整窗口大小var=StringVar()#定义StringVar()类型21cnjycomvar1=StringVar()c=_____("点名册.txt",'r')#以只读模式打开文件a=c.readlines()#读取文件全部内容c.___________#关闭文件b=[]#b作为列表a的备份【答案】①tkinterimport②open③close【解析】【详解】本题考查python相关知识。(1)导入tkinter模块,故填入tkinterimport(2)以只读模式打开文件,故填入open。(3)关闭文件,填入close。17.请编写程序,实现输入一个人的出生年份(>=1972),输出他的生肖,直到输入0结束,运行结果如下:【来源:21cnjy.com】请输入出生年份,输入0结束:2004你的生肖是:猴请输入出生年份,输入0结束:完善下列代码,实现上述功能.defshengxiao(year):#求生肖zodiac=["鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"]_____________①②_____________#以下为主程序myyear=int(input("请输入出生年份,输入0结束:"))whilemyyear!=0:print("你的生肖是:",_______③)myyear=int(input("请输入出生年份,输入0结束:"))【答案】①index=(myyear-1972)%12②returnzodiac[index]③shengxiao(myyear)2-1-c-n-j-y【解析】【详解】本题考查Python相关知识。(1)第一空在根据出生年和1972差值的余数从切片中取相应字符。因为1972正好是鼠年。故填入index=(myyear-1972)%12。(2)第二空,根据index的值从切片中取字符,返回给函数,故填入returnzodiac[index]。(3)此处为调用函数,将输入的年份代入,故填入shengxiao(myyear)。三、填空题18.递归的基本思想是把________的问题层层转化为规模较小的________问题求解。对递归而言,________与________,二者缺一不可。【出处:21教育名师】【答案】规模较大同类递推回归【解析】【详解】本题考查递归思想。程序调用自身的编程技巧称为递归(recursion)。递归做为一种算法在程序设计语言中广泛应用。一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。【版权所有:21教育】19.利用迭代算法解决问题,有三个关键步骤:确定________;建立迭代________;对迭代过程进行________,这是编写迭代程序必须考虑的问题,不能让迭代过程无休止地重复执行下去。21教育名师原创作品【答案】迭代变量关系式控制【解析】【详解】本题考查Python相关知识。迭代法也称辗转法,是一种不断用变量的旧值递推新值的过程,跟迭代法相对应的是直接法,即一次性解决问题。迭代算法是用计算机解决问题的一种基本方法,它利用计算机运算速度快、适合做重复性操作的特点,让计算机对一组指令进行重复执行,在每次执行这组指令(或这些步骤)时,都从变量的原值推出它的一个新值,迭代法又分为精确迭代和近似迭代。利用迭代算法解决问题,有三个关键步骤:确定迭代变量;建立迭代关系式;对迭代过程进行控制,这是编写迭代程序必须考虑的问题,不能让迭代过程无休止地重复执行下去。20.matplotlib模块是一个________。matplotlib的绘图原理很简单,利用________画线函数就可以在直角平面内轻松地将________坐标点对连接成平滑曲线。【答案】绘图库plot(x,y)【解析】【详解】本题考查matplotlib模块。Matplotlib是一个Python的2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。matplotlib模块是一个绘图库。matplotlib的绘图原理很简单,利用plot画线函数就可以在直角平面内轻松地将(x,y)坐标点对连接成平滑曲线。21cnjycom21.numpy是一个科学计算包,其中包括很多________,如________、矩阵计算方法、________、线性代数等。【答案】数学函数矢量运算三角函数【解析】【详解】本题考查Python相关知识。NumPy(NumericalPython)是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵numpy是一个科学计算包,其中包括很多数学函数,如矢量运算、矩阵计算方法、三角函数、线性代数等。22.用Python访问Access数据库一般可分为________个步骤:第一步:建立与________的连接;第二步:根据需要________;第三步:访问记录集,________;第四步:根据需要把处理好的数据________中;第五步:________与数据库的连接。【答案】五数据库产生记录集处理数据更新到数据库断开【解析】【详解】本题考查Python访问Access相关知识。用Python访问Access数据库一般可分为五个步骤:第一步,建立与数据库的连接;第二步,根据需要产生记录集;第三步,访问记录集处理数据;第四步,根据需要把处理好的数据更新到数据库中;第五步,断开与数据库的连接。21·cn·jy·com23.Python中读写文本文件的方法,其中打开用________把外存储器里的文本文件(.txt)打开;存储用________将内存中的数据存储到外存储器的文件中;关闭文件时一定要用________关闭文件。21世纪教育网版权所有【答案】open函数write方法close方法【解析】【详解】本题考查Python相关知识。Python中读写文本文件的方法,其中打开用open函数把外存储器里的文本文件(.txt)打开;存储用write方法将内存中的数据存储到外存储器的文件中;关闭文件时一定要用close方法关闭文件。24.Python内置函数______用来返回数值型序列中所有元素之和。【答案】sum()【解析】【详解】本题考查Python相关知识。Python内置函数sum()用来返回数值型序列中所有元素之和。25.Python内置函数______用来返回序列中的最小元素。【答案】min()【解析】【详解】本题考查Python相关知识。Python内置函数min()用来返回序列中的最小元素。26.Python内置函数______用来返回序列中的最大元素。【答案】max()【解析】【详解】本题考查Python相关知识。Python内置函数max()用来返回序列中的最大元素。27.参数的作用是______,当有多个参数时,各参数之间用______分隔开。【答案】向函数传递值逗号【解析】【详解】本题考查Python相关知识。函数参数的作用是传递数据给函数使用。在使用的过程中,参数有两种形式:形式参数和实际参数。形参,定义函数时的参数。实参,调用函数时的参数根据实际参数类型不同,将实际参数传递给形参的方式有两种:值传递和引用传递。当有多个参数时,各参数之间用逗号分隔开。28.系统函数即函数库中的标准函数,是程序设计语言或操作系统提供给用户的一系列______的程序。【答案】已经编制好【解析】【详解】本题考查Python相关知识。函数可分为系统函数和自定义函数。系统函数即函数库中的标准函数,是程序设计或操作系统提供给用户的一系列已经编制好的程序。29.函数可分为______和______两种类型。【答案】系统函数用户自定义函数【解析】【详解】本题考查Python相关知识。函数可分为系统函数和自定义函数。系统函数即函数库中的标准函数,是程序设计或操作系统提供给用户的一系列已经编制好的程序。四、判断题30.def块中的代码不是主程序的一部分,会跳过该段代码.(____)【答案】对【解析】【详解】本题考查Python相关知识。def是自定义函数,是用户自己编写的一段程序,一般包括函数名,参数,返回值和函数体等四部分,其中参数和返回值可根据需要进行定义。def块中的代码不是主程序的一部分,会跳过该段代码。题干说法正确。31.用户自定义函数是用户自己写的一段程序.一般包括函数名、参数、返回值、函数体等四部分.其中,函数名和参数是必不可少的部分.(____)【答案】错【解析】【详解】本题考查自定义函数。用户自定义函数是用户自己写的一段程序.一般包括函数名、参数、返回值、函数体等四部分.其中,其中参数和返回值可根据需要进行定义。题干说法错误。21世纪教育网www.21cnjy.com精品试卷·第2页(共2页)21世纪教育网(www.21cnjy.com)中小学教育资源及组卷应用平台4.1.1Python的常量和变量-粤教版(2019)高中信息技术必修一练习学校:___________姓名:___________班级:___________考号:___________一、选择题1.下面()是Python合法的变量名A.int32B.40XLC.selfD.name2.关于程序中的变量,以下说法中错误的是()。A.将数据存入某变量后,读取该变量中的值,不会改变该变量的值B.将数据存入某变量以后就不能将新的数据存入该变量C.将数据存入某变量以后可以将新的数据存入该变量D.在一个问题的计算过程中,可能需要使用多个变量3.下列选项中,不属于Python特点的是()。A.面向对象B.运行效率高C.可读性好D.开源4.有python程序如下a=int(input())b=int(input())c=input()ifc=='+':print(a+b)elifc=='-':print(a-b)elifc=='':print(ab)elifc=='/':print(a/b)else:print(“输入错误,请重试”)当程序运行后,小新依次输入92程序输出结果应为()A.18B.11C.7D.45.下面是小新在某道编程题中定义的变量,哪个变量名是不合法的()A.apple_Prince3B._mathC.3appleD.Apple6.在python中,运行下列程序,正确的结果是()s=0foriinrange(1,5):s=s+iprint("i=",i,"s=",s)A.i=4s=10B.i=5s=10C.i=5s=15D.i=6s=157.小新编制了一个python程序如下,但程序无法执行,你帮他找出程序中一共有几处错误()1a=3b=input()c=a+bprint("c")A.1B.2C.3D.48.在python中,以下哪个选项a的数据类型为整型()A.a=5B.a=input()C.a='5'D.a=5.09.以下哪项是一个绘图库模块()A.numpyB.matplotlibC.plotD.arange10.函数如下defchanageInt(number2):number2=number2+1print("changeInt:number2=",number2)#调用number1=2chanageInt(number1)print("number:",number1)打印结果哪项是正确的()A.changeInt:number2=3number:3B.changeInt:number2=3number:2C.number:2changeInt:number2=2D.number:2changeInt:number2=311.以下关于模块说法错误的是()A.一个xx.py就是一个模块B.任何一个普通的xx.py文件可以作为模块导入C.模块文件的扩展名不一定是.pyD.运行时会从制定的目录搜索导入的模块,如果没有,会报错异常12.导入模块的方式错误的是()A.importmoB.frommoimportC.importmoasmD.importmfrommo13.下列关于变量的说法,错误的是()。A.程序中的变量是计算过程中要用到的数据的存储单元B.在算法的执行过程中可以读取变量的值,也可以将数据存储到指定的变量中C.对变量的赋值操作将改变其原来的值D.数据存储到某个变量,当数据被读取后,变量中的数据将变为空二、操作题14.以下是牛顿迭代程序,认真阅读,填写横线内容.importmatha=float(input("请输入方程系数a_________:"))b=float(input("请输入方程系数b:"))c=float(input("请输入方程系数c:"))d=bb-4acif___________:x1=(-b+math.sqrt(d))/(2a)x2=(-b-math.sqrt(d))/(2a)print("方程有两个不同的解",x1,x2)elif____________:x1=-b/(2a)print("方程有两个相同的解",x1)else:print("方程无解")15.listque=[]#定义列表listque存储订单x=0while(x!=4):#当x=!4时,执行循环print('1.添加订单')print('2.发货')print('3.查看订单列表')print('4.退出')x=int(input("输入你的选择:"))#输入选择项ifA:y=input("输入订单编号:")#输入订单编号B#在列表listque中添加订单号elifx==2:C#如果订单列表为空print("订单列表为空")else:print("发货单号:"+listque.pop(0))elifx==3:print("等待发货:",listque)#查询列表listque中的订单号print()input("运行完毕,请按回车键退出...")(1)此列表,定义的是(_____)列表。(从“空、非空”里选填)(2)补充划线A处的内容____________________(3)补充划线B处的内容____________________(4)补充划线C处的内容____________________16.下面是随机点名器的代码设计,大致可分为四个模块。一是导入相应模块,二是窗体界面元素的产生及布局和有关属性设置,三是打开“点名册.txt”,读取并保存姓名数据,四是设计两个按钮的单击事件代码。以下是部分代码,认真阅读,补充完成下列程序。21世纪教育网版权所有from______________#导入tkinter模块importtkinter.messagebox#导入弹窗库模块importrandom#导入随机数模块importdatetime#导入日期时间模块root=Tk()#创建主窗口root.title("随机点名器")#设置窗口标题root.geometry('808x280+300+200')#设置窗口大小及位置root.resizable(0,0)#禁止调整窗口大小var=StringVar()#定义StringVar()类型21·cn·jy·comvar1=StringVar()c=_____("点名册.txt",'r')#以只读模式打开文件a=c.readlines()#读取文件全部内容c.___________#关闭文件b=[]#b作为列表a的备份17.请编写程序,实现输入一个人的出生年份(>=1972),输出他的生肖,直到输入0结束,运行结果如下:21cnjy.com请输入出生年份,输入0结束:2004你的生肖是:猴请输入出生年份,输入0结束:完善下列代码,实现上述功能.defshengxiao(year):#求生肖zodiac=["鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"]_____________①②_____________#以下为主程序myyear=int(input("请输入出生年份,输入0结束:"))whilemyyear!=0:print("你的生肖是:",_______③)myyear=int(input("请输入出生年份,输入0结束:"))三、填空题18.递归的基本思想是把________的问题层层转化为规模较小的________问题求解。对递归而言,________与________,二者缺一不可。www.21-cn-jy.com19.利用迭代算法解决问题,有三个关键步骤:确定________;建立迭代________;对迭代过程进行________,这是编写迭代程序必须考虑的问题,不能让迭代过程无休止地重复执行下去。2·1·c·n·j·y20.matplotlib模块是一个________。matplotlib的绘图原理很简单,利用________画线函数就可以在直角平面内轻松地将________坐标点对连接成平滑曲线。21.numpy是一个科学计算包,其中包括很多________,如________、矩阵计算方法、________、线性代数等。【来源:21·世纪·教育·网】22.用Python访问Access数据库一般可分为________个步骤:第一步:建立与________的连接;第二步:根据需要________;第三步:访问记录集,________;第四步:根据需要把处理好的数据________中;第五步:________与数据库的连接。23.Python中读写文本文件的方法,其中打开用________把外存储器里的文本文件(.txt)打开;存储用________将内存中的数据存储到外存储器的文件中;关闭文件时一定要用________关闭文件。21教育网24.Python内置函数______用来返回数值型序列中所有元素之和。25.Python内置函数______用来返回序列中的最小元素。26.Python内置函数______用来返回序列中的最大元素。27.参数的作用是______,当有多个参数时,各参数之间用______分隔开。28.系统函数即函数库中的标准函数,是程序设计语言或操作系统提供给用户的一系列______的程序。29.函数可分为______和______两种类型。四、判断题30.def块中的代码不是主程序的一部分,会跳过该段代码.(____)31.用户自定义函数是用户自己写的一段程序.一般包括函数名、参数、返回值、函数体等四部分.其中,函数名和参数是必不可少的部分.(____)21世纪教育网www.21cnjy.com精品试卷·第2页(共2页)21世纪教育网(www.21cnjy.com) 展开更多...... 收起↑ 资源列表 4.1.1Python的常量和变量-粤教版(2019)高中信息技术必修一练习(原卷版).doc 4.1.1Python的常量和变量-粤教版(2019)高中信息技术必修一练习(解析版).doc