python基础试题含答案图文.docx
《python基础试题含答案图文.docx》由会员分享,可在线阅读,更多相关《python基础试题含答案图文.docx(13页珍藏版)》请在冰豆网上搜索。
![python基础试题含答案图文.docx](https://file1.bdocx.com/fileroot1/2022-12/31/316d80d0-5b3f-4004-960b-450b1a14cf1d/316d80d0-5b3f-4004-960b-450b1a14cf1d1.gif)
python基础试题含答案图文
python基础试题(含答案)图文
一、选择题
1.python中表达式4**3=()。
A.12B.1C.64D.7
2.下列选项中,能作为python程序变量名的是()
A.ifB.2xC.a*bD.x2
3.下面Python代码运行后,a、b的值为()
a=23
b=int(a/10)
a=(a-b*10)*10
b=a+b
print(a,b)
A.232B.3020C.3032D.32
4.Python程序中第一行:
a=int(input()),第二行:
print(a+5),运行程序后键盘输入3,输出结果是()。
A.5B.3C.8D.其他
5.在Python中,表达式a**3+b**3+c**3==100*a+10*b+c属于()
A.算术表达式B.关系表达式C.逻辑表达式D.日期表达式
6.在Python中,不同的数据,需要定义不同的数据类型,可用方括号“[]”来定义的是()
A.列表B.元组C.集合D.字典
7.有如下VB程序段:
s1="python":
s2="visual"
i=1:
j=1:
s=""
DoWhilei<=Len(s1)Andj<=Len(s2)
IfMid(s1,i,1)>=Mid(s2,j,1)Then
s=s+Mid(s1,i,1)
Else
j=j+1
EndIf
i=i+1
Loop
执行该程序后,j的值是()
A.2B.3C.5D.7
8.队列在Python中,用()实现队列的创建,队列的基本操作:
()()()()线性数据结构又称线性表。
A.随机;入队;出队;求队长;判队空B.列表;入队;出队;求队长;判队空
C.列表;随机;出队;求队长;判队空D.入队;随机;列表;求队长;判队空
9.李老师要建立一个“Python程序设计”课程的学习网站,下面比较合理的制作流程是:
()
①规划网站结构,并确定设计风格②发布网站③网页制作④了解网站运行环境,选择网站开发工具⑤确定网站主题,收集素材
A.①⑤③④②B.⑤①④②③C.①④⑤②③D.⑤①④③②
10.在PythonIDLE编辑器中书写正确的表达式()
A.b**2-4acB.1/2gt2C.pi*r^2D.2*pi*r
11.Python中用来声明字符串变量的关键字是()
A.strB.intC.floatD.char
12.运行Python程序的过程中出现了如下图错误提示,原因是()。
A.变量名51study太长
B.应该写成"chinese"=51study
C.“chinese”应该写成“chinaˈs”
D.变量名51study不符合python语言规范,变量名不能以数字开头
13.在python中,下列属于字符串常量的是()
A."python"B.3.14C.cntD.2018
14.我们学习了使用Python程序设计语言解决问题,Python程序设计语言属于()。
A.高级语言B.自然语言C.汇编语言D.机器语言
15.python的命令行提示符是()
A.###B.>>>C.///D.C:
》
二、程序填空
16.蒙特卡洛方法不仅可以用来模拟投针实验,还可以用来模拟求解圆周率T。
请根据所学知识,并上网搜索有关资料,找到利用蒙特卡洛方法求解圆周率Π的原理、方法和Python程序。
17.设计完成算法之后,小C打算用所学的Python程序设计语言完成程序的编写。
(1)Python程序设计语言属于程序设计语言中的_______________。
A.机器语言B.汇编语言C.高级语言D.翻译程序
(2)小C将设计好的算法转为Python程序语言(如下)。
其中“Tot2=8”是一个___________,“#初始化时长费为0”是一个__________,“S<=3.3”是一个___________,“float(input(“请输入时长”))”是一个__________。
A.函数B.表达式C.赋值语句D.注释语句
1Tot1=0#初始化时长费为0
2Tot2=0#初始化里程费为0
3S=float(input(“请输入里程数”))
4T=float(input(“请输入时长”))#输入里程数和时长
5if(T>9):
#计算时长费用
6Tot1=(T-9)*0.2
7if(S<=3.3):
#算里程费用
8Tot2-8
9else:
10Tot2=8+(S-3.3)*1.35
11Cost-Totl+tot2
12print(Cost)#输出总车费
(3)小C写好代码之后,编译运行发现报错了,根据下图中所示的错误信息分析该程序报错的原因是:
____________________________________________________________________________________________。
NameErrorTraceback(mostrecentcalllast)
in
9else:
10
—→11Cost=Tot1+tot2
12
NameError:
name’tot2’isnotdefined
(4)经过修改之后,小C对照某次滴滴打车的订单,将对应的公里数和时长输入程序,运行得到的结果与实际支付的费用一致,小C会心一笑验证得知程序正确无误。
小C借助于计算机编写程序解决问题的这个过程是:
①设计算法②编写程序③分析问题④调试运行程序,合理的顺序是_________。
(填写序号即可)
(5)总结用计算机解决问题的优势主要有:
_______________________________________________。
18.为保护环境,很多城市开始对垃圾实行分类,便于更好的进行处理,为了让大家了解垃圾的分类情况,建立了以下四类列表,list1(可回收垃圾)、list2(有害垃圾)、list3(易腐垃圾),剩下的为其他垃圾,目前,列表中已经存储了以下数据。
list1=["玻璃瓶","旧书","金属","纸板箱","旧衣服","易拉罐"]
list2=["胶片","消毒水","纽扣电池","水银温度计","过期药水","泡沫塑料"]
list3=["动物内脏","菜叶菜梗","过期食品","香蕉皮","果壳"]
根据现有列表,完成以下问题:
(1)写出从列表list3中取出“过期食品”的表达式:
___________________________________________________________________________
(2)写出从list1中截取["旧书","金属","纸板箱"]这一段的表达式:
___________________________________________________________________________
(3)现又发现一个新的列表如下:
list4=["过期化妆品","过期药品","杀虫剂"],经过判断,里面存放的为有害垃圾,如何将该列表中的元素添加到list2中,请写出相关的表达式:
__________________________________________________________________________
(4)小明在路上捡到了一个塑料瓶,判断为可回收垃圾,写出相关表达式,将塑料瓶添加到列表list1中:
__________________________________________________________________________
19.猴子吃桃问题:
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第10天早上想再吃时,见只剩下一个桃子了。
求第一天共摘了多少。
20.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:
能被4整除但不能被100整除或能被400整除,闰年的2月为29天)
day=input("请输入年月日(格式举例:
2000-01-05):
")
year=int(day[:
4])
month=_________
sun=int(day[8:
10])
print(year,month,sun)
f_run=[31,28,31,30,31,30,31,31,30,31,30,31]
tall_day=0
if______:
foriinrange(month-1):
tall_day+=f_run[i]
__________
else:
foriinrange(month-1):
tall_day+=f_run[i]
tall_day+=sun
print(day+"是当年的第"+str(tall_day)+"天")
(1)将程序横线处补充完整
(2)如输入“2020-4-19”为当年的第_____天。
21.完善程序。
以下是猜数游戏的程序,请在画线出填写正确的内容。
importrandom
secret=random.randint(0,10)
print(“---猜数游戏-----”)
cs=int(input(“你猜的数字是”))
whilecs!
=secret:
_______cs>secret:
_________(“唉,猜大啦!
”)
__________:
print(“嘿嘿,猜小了!
”)
cs=int(input(“重新猜一个靠谱的数字是:
”))
print(“游戏结束,不玩了!
”)
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.C
【详解】
本题考查的是python中表达式相关知识。
在Python算数运算中,*代表乘法,**代表乘方,故4**3=4*4*4=64,故选项C正确。
解析:
C
【详解】
本题考查的是python中表达式相关知识。
在Python算数运算中,*代表乘法,**代表乘方,故4**3=4*4*4=64,故选项C正确。
2.D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故能作为python程序变量名的是x2,故本题选D选项。
解析:
D
【详解】
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故能作为python程序变量名的是x2,故本题选D选项。
3.C
【详解】
本题主要考查Python程序执行。
a=23,b=int(a/10)=2,a=(a-b*10)*10=30,b=a+b=32,故代码运行后,a、b的值为30、32,故本题选C选项。
解析:
C
【详解】
本题主要考查Python程序执行。
a=23,b=int(a/10)=2,a=(a-b*10)*10=30,b=a+b=32,故代码运行后,a、b的值为30、32,故本题选C选项。
4.C
【详解】
本题主要考查Python语句执行。
运行程序后键盘输入3,即a=3,执行print(a+5)后,输出结果是8,故本题选C选项。
解析:
C
【详解】
本题主要考查Python语句执行。
运行程序后键盘输入3,即a=3,执行print(a+5)后,输出结果是8,故本题选C选项。
5.B
【详解】
本题主要考查Python表达式的运算。
“==”是关系运算符,用于判断左右两边的表达式值是否相等,故该表达式是关系表达式,故本题选B选项。
解析:
B
【详解】
本题主要考查Python表达式的运算。
“==”是关系运算符,用于判断左右两边的表达式值是否相等,故该表达式是关系表达式,故本题选B选项。
6.A
【详解】
本题主要考查Python数据类型。
列表用方括号“[]”来定义,元组可以用圆括号“()”来定义,集合可以用大括号“{}”来定义,字典用大括号“{}”来定义,故本题选A选项。
解析:
A
【详解】
本题主要考查Python数据类型。
列表用方括号“[]”来定义,元组可以用圆括号“()”来定义,集合可以用大括号“{}”来定义,字典用大括号“{}”来定义,故本题选A选项。
7.C
【详解】
本题主要考查VB程序的执行。
分析程序可知,变量i控制从s1中取字符,变量j从s2中取字符,依次比较字符串s1、s2的每一个字符,若s1中的字符大于或等于s2中的字符,则将s1中对应的字
解析:
C
【详解】
本题主要考查VB程序的执行。
分析程序可知,变量i控制从s1中取字符,变量j从s2中取字符,依次比较字符串s1、s2的每一个字符,若s1中的字符大于或等于s2中的字符,则将s1中对应的字符拼接到变量s中,否则变量j递增。
第一遍循环,i=1,j=1,“p”<“v”,j=j+1=2,i=i+1=2;第二遍循环,“y”>“i”,i=i+1=3;第三遍循环,“t”>“i”,i=i+1=4;第四遍循环,“h”<“i”,j=j+1=3,i=i+1=5;第五遍循环,“o”<“s”,j=j+1=4,i=i+1=6;第六遍循环,“n”<“u”,j=j+1=5,i=i+1=7,循环结束,故执行该程序后,j的值是5,故本题选C选项。
8.B
【详解】
本题考查数据结构相关知识。
在Python中,用列表实现队列的创建,队列的基本操作:
入队,出队,求队长,判队空线性数据结构又称线性表。
因此B选项正确。
【点睛】
解析:
B
【详解】
本题考查数据结构相关知识。
在Python中,用列表实现队列的创建,队列的基本操作:
入队,出队,求队长,判队空线性数据结构又称线性表。
因此B选项正确。
【点睛】
9.D
【详解】
本题考查的是网站制作流程相关知识。
建立网站首先是要确定网站的主题,收集素材,规划网站,然后选择网站的开发工具进行网页制作,最后进行网站的发布。
故选项D正确。
解析:
D
【详解】
本题考查的是网站制作流程相关知识。
建立网站首先是要确定网站的主题,收集素材,规划网站,然后选择网站的开发工具进行网页制作,最后进行网站的发布。
故选项D正确。
10.D
【详解】
本题主要考查Python表达式知识点。
书写表达式时运算符号不能省略,+加、-减、*乘、**幂、/除、//整除、%取模,A、B、C正确的表达式分别是b**2-4*a*c,1/2*g*t*
解析:
D
【详解】
本题主要考查Python表达式知识点。
书写表达式时运算符号不能省略,+加、-减、*乘、**幂、/除、//整除、%取模,A、B、C正确的表达式分别是b**2-4*a*c,1/2*g*t**2,pi*r**2,2*pi*r是正确的表达式,故本题选D选项。
11.A
【详解】
本题主要考查Python变量。
Python中,int是整型,str是字符串型,float是浮点型,故本题选A选项。
解析:
A
【详解】
本题主要考查Python变量。
Python中,int是整型,str是字符串型,float是浮点型,故本题选A选项。
12.D
【详解】
本题考查的是程序调试。
报错内容是“语法错误:
无效语法”,变量名51study,数字不能作为变量名的开头,故D项正确。
解析:
D
【详解】
本题考查的是程序调试。
报错内容是“语法错误:
无效语法”,变量名51study,数字不能作为变量名的开头,故D项正确。
13.A
【详解】
本题主要考查Python数据类型。
"python"是字符串常量,3.14、2018是数值型常量,cnt是变量,故本题选A选项。
解析:
A
【详解】
本题主要考查Python数据类型。
"python"是字符串常量,3.14、2018是数值型常量,cnt是变量,故本题选A选项。
14.A
【详解】
本题主要考查Python程序设计语言。
Python、VB、C程序设计语言等均属于高级语言,故本题选A选项。
解析:
A
【详解】
本题主要考查Python程序设计语言。
Python、VB、C程序设计语言等均属于高级语言,故本题选A选项。
15.B
【详解】
本题主要考查Python命令提示符。
python的命令行提示符是>>>,故本题选B选项。
解析:
B
【详解】
本题主要考查Python命令提示符。
python的命令行提示符是>>>,故本题选B选项。
二、程序填空
16.原理:
通常蒙特•卡罗方法通过构造符合一定规则的随机数来解决数学上的各种问题。
对于那些由于计算过于复杂而难以得到解析解或者根本没有解析解的问题,蒙特•卡罗方法是一种有效的求出数值解的方法。
一般蒙特•卡罗方法在数学中最常见的应用就是蒙特•卡罗积分。
方法:
蒙特卡罗方法的解题过程可以归结为三个主要步骤:
构造或描述概率过程;实现从已知概率分布抽样;建立各种估计量。
利用蒙特卡洛方法实现求解圆周率
#!
/usr/bin/Python
#-*-coding:
utf-8-*-
importrandom
importmath
defmonteCarlo(N):
i=0
count=0
whilei<=N:
x=random.random()
y=random.random()
ifpow(x,2)+pow(y,2)<1:
count+=1
i+=1
pi=4*count/N
print(pi)
monteCarlo(1000000)
【详解】
本题考查的知识点是Python程序。
原理:
通常蒙特•卡罗方法通过构造符合一定规则的随机数来解决数学上的各种问题。
对于那些由于计算过于复杂而难以得到解析解或者根本没有解析解的问题,蒙特•卡罗方法是一种有效的求出数值解的方法。
一般蒙特•卡罗方法在数学中最常见的应用就是蒙特•卡罗积分。
方法:
蒙特卡罗方法的解题过程可以归结为三个主要步骤:
构造或描述概率过程;实现从已知概率分布抽样;建立各种估计量。
利用蒙特卡洛方法实现求解圆周率#!
/usr/bin/Python#-*-coding:
utf-8-*-importrandomimportmathdefmonteCarlo(N):
i=0count=0whilei<=N:
x=random.random()y=random.random()ifpow(x,2)+pow(y,2)<1:
count+=1i+=1pi=4*count/Nprint(pi)monteCarlo(1000000)
17.C.高级语言C.赋值语句D.注释语句B.表达式A.函数Python程序设计语言规定,在标识符中,字母大小写是有区别的。
该程序代码中表示里程费的Tot2错误将字母“T”写成了小写”“t”。
合理的顺序是:
③分析问题①设计算法②编写程序④调试运行程序略
【详解】
本题主要考查Python程序的编写。
①Python程序设计语言属于程序设计语言中的高级语言,选C选项。
②“Tot2=8”是一个赋值语句,选C选项。
③“#初始化时长费为0”是一个注释语句,选D选项。
④“S<=3.3”是一个表达式,选B选项。
⑤“float(input(“请输入时长”))”是一个函数,float()函数用于将整数和字符串转换成浮点数,选A选项。
⑥编译运行发现报错了,根据下图中所示的错误信息分析该程序报错的原因是:
Python程序设计语言规定,在标识符中,字母大小写是有区别的。
该程序代码中表示里程费的Tot2错误将字母“T”写成了小写”“t”。
⑦小C借助于计算机编写程序解决问题的这个过程,合理的顺序是:
③分析问题①设计算法②编写程序④调试运行程序。
⑧略
18.list3[2]list1[1:
4]list2=list2+list4或list2.extend(list4)list1=list1+[“塑料瓶”]或者list1.append(“塑料瓶”)
【详解】
本题主要考查Python列表数据类型。
①“过期食品”在列表list3索引2,故从列表list3中取出“过期食品”的表达式:
list3[2]。
②"旧书","金属","纸板箱"在列表list1索引1~3,从list1中截取["旧书","金属","纸板箱"]这一段的表达式:
list1[1:
4](不包括4)。
③将该列表中的元素添加到list2中,表达式是list2=list2+list4或list2.extend(list4)。
(extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表))。
④将塑料瓶添加到列表list1中:
list1=list1+[“塑料瓶”]或者list1.append(“塑料瓶”)(append字符追加函数)。
19.s=1
foriinrange(9):
s=(s+1)*2
print(s)
【详解】
本题主要考查Python程序设计。
第10天,只剩下一个桃子s=1,由题干每天早上都吃了前一天剩下的一半零一个,则第9天剩下的桃子为(s+1)*2,可以通过for循环求得第一天共摘了多少个桃子,具体代码如下:
s=1
foriinrange(9):
s=(s+1)*2
print(s)
20.int(day[5:
7])(year%4==0andyear%100!
=0oryear%400==0)andmonth>=2tall_day+=1110
【详解】
本题主要考查Python程序的执行与调试。
①此处是取出字符串day中的月份赋给变量month,month是第5~第6位,str[start:
end],start会包含在结果中而end却不会,故此处填int(day[5:
7])。
②此处判断是不是闰年,因为闰年的二月有29天,故if判断还要判断当前的月份是不是包含2月即大于等于2月,故此处填(year%4==0andyear%100!
=0oryear%400==0)andmonth>=2。
③如果是闰年且当前日期包括2月,则循环完tall_day需增加1天,故填tall_day+=1。
④输入“2020-4-19”为当年的第110天。
21.ifprintelse
【详解】
本题主要考查Python程序的执行与调试。
①secret是随机生成的数,sc是你猜的数字,此处是判断cs与secret的大小,故填if。
②如果cs大于secret,则输出“唉,猜大啦”,故填print。
③如果cs小于secret,输出“嘿嘿,猜小了!
”,故填else。