admin 管理员组

文章数量: 1087135


2024年12月31日发(作者:datagridview选中行改变事件)

python基础试题(含答案)word

一、选择题

1.小新编制了一个

python

程序如下,但程序无法执行,你帮他找出程序中一共有几处错

误(

1a=3

b=input()

c=a+b

print("c")

A

1 B

2 C

3

2.下列不可以用来搭建本地服务器的软件是(

1

Python

2

Excel

3

IIS (4)Apache

A

(1)(2) B

(3)(4) C

(1)(2)(3)(4)

3.在

Python

中,

input

()函数的返回结果的数据类型为(

A

Number

B

String

C

List

4.在

Python

程序设计语言中,用于输入和输出的函数分别是

( )

A

read( )

write(

) B

input( )

output(

C

input( )

print(

) D

cin( )

cout( )

5.在下列程序设计语言中,属于人工智能语言的是(

)。

A

Python

B

VB

C

Pascal

D

C

6.下列序列拼接错误的是()

A

list = [ None ] * 4

B

msg = “Python”, ”

语言

C

tup = “/”.join( ( “123”, ”234” ) )

D

set = { 1, 2, 3 } + { 4, 5, 6 }

7.Python

不支持的数据类型有( )。

A

char B

int C

float

8.以下选项中,不是

Python

中文件操作的相关函数是(

)。

A

open () B

load ()

C

read () D

write ()

9.关于

Python3.8

基础知识的说法中,不正确的是(

A

.支持中文做标识符

B

Python

标识符不区分字母的大小写

C

Python

命令提示符是

>>>

D

.命令中用到的标点符号只能是英文字符

10.下列

Python

表达式的值不是

2

的是(

)。

A

3%2 B

5//2 C

1*2

D

4

D

(1)(2)(4)

D

Sets

)

D

list

D

1+3/3

11.已知

a = 6

b = -4

,则

Python

表达式

a / 2 + b % 2 * 3

的值为()

A

3 B

3.0 C

5 D

5.0

12.下列哪个语句在

Python

中是非法的?( )

A

x = y = z = 1 B

x = (y = z + 1) C

x, y = y, x D

x += y x=x+y

13.以下是一段

python

程序:

它的可以用哪个流程图表达(

)。

A

B

C

14.在

Python

中要交换变量

a

b

中的值,应使用的语句组是(

A

a,b = b,a

C

a = b

b = a

15.下列不属于高级编程语言的是

...

A

.C 语言

B

.VB语言

C

.Python语言

D

.机器语言

B

a = c

a = b

b = c

D

c = a

b = a

b = c

二、程序填空

16.密码强度检测。编写

python

程序,实现如下功能:输入要检测的密码,输出密码强度

结果。密码字符分为数字字符、字母和其他符号三类。密码强度的检测方法为:若密码位

数少于

8

位,则不进行强度检测,给出提示“密码位数不能少于

8

位,请重新输入!”。

若密码位数在

8

位及以上,则进行强度检测:若密码字符属于同一类字符,则密码强度为

“弱”;若密码字符属于不同的二类字符,则密码强度为“中等”;若密码字符属于不同

的三类字符,则密码强度为“强”。

1

)若输入“

12abcd5

!”,则输出结果为

_________

(选填,选字母:

A

.密码位数不能

少于

8

位,请重新输入!

/ B

.弱

/ C

.中等

/ D

.强)

2

)实现上述功能的程序如下,请在划线处填入合适的代码。

password=input

(“请输入要检测的密码:”)

①_______________

if n<8

print

(“密码位数不能少于

8

位,请重新输入!”)

else

n1=0

n2=0

n3=0

for i in range

0

n

1

):

②_______

if

0

<=ch<=

9

”:

n1=1

elif

a

<=ch<=

z

or

A

<=ch<=

Z

”:

n2=1

else

n3=1

③_____

if x==3

print

(“强”)

elif x==2

print

(“中等”)

else

print

(“弱”)

17.小敏有

10

万元本金,想要购买银行保证收益型理财产品。每年到期后连本带利仍购买

此种理财。请你帮助小敏分析,在年收益率不变的情况下,多少年后小敏的累计收益能超

过本金,请完成程序填空。(例如输人:

5.15%,

输出:

14

年后收益超过本金。)

1 s=input("

请输入年利率:")

2 rate=float(s[:-1])*0.01

3 money=100000

4 year=0

5 while money<=200000:

6 money=round

),

2)

7 year=year+1

8 print(year,"

年后收益超过本金。

1)

程序第

6

行下划线处应填入

___________

2)

程序第

2

行的作用是

____________

,并赋值给变量

rate

3)

该程序主要是通过

while

实现

____________

结构。

18.小王编写了“字符串缩写”程序,实现如下功能:

1.

输入一串由英文字母和数字组成的字符串,

2.

如果字符串有连续字符构成的升序段(后面字符的

ASCII

值比前面的字符的

ASCII

值大

1

),则把升序段缩写成由第一个字符加上“

”和最后一个字符组成的新字符段,

3.

例如:字符串为“

abcdf12345becomexy

”,则缩写成“

a-df1-5becomex-y

”。

程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:

实现上述功能的程序如下,请在程序划线处填入合适的代码。

s=input("

请输入字符串

s:")

_______

flag = False

result=" "

for i in range( 0 , k-1):

if ___________________ :

result=result+s[i]+"-"

flag = True

elif ord(s[i]) ! = ord(s[i+1])-1:

result=result+s[i]

_____

result=result + s[i+1]

print("

缩写后的字符串为:

",result)

划线处

处应该填入的语句为:

划线处

处应该填入的语句为:

划线处

处应该填入的语句为:

19.程序设计:键盘输入任意的正整数,程序输出与其相应的二进制数。

代码如下:

n

int(input("

请输入一个十进制数:

"))

result

[]

while n>0:

(

)

n

e()

for i in result:

print(i,end

”)

1

)程序代码中①处正确的代码是(

_______

)。

A.n%2 B.n/2 C.n//2 D.n*2

2

)程序代码中②处可能的代码是(

_______

)。

A.n%2 B.n/2 C.n//2 D.n*2

20.求水仙花数(一个三位数,其各位数字立方和等于该数字本身)

21.(项目情境)在中国古代,出自数学家张丘建的《算经》中这样一个值得研究的问

题:今有鸡翁一

,

直钱五;鸡母一

,

直钱三;鸡雏三

,

直钱一。凡百钱

,

买鸡百只。问鸡翁、

母、雏各几何?这个问题就是著名的“百钱买百鸡问题”。即:现有

100

文钱,公鸡

5

钱一只,母鸡

3

文钱一只,小鸡一文钱

3

只,要求:公鸡,母鸡,小鸡都要有,把

100

钱买

100

只鸡,买的鸡是整数。问公鸡、母鸡和小鸡各几何?

(问题求解)设用变量

g

m

x

三个变量分别存放公鸡、母鸡和小鸡的数量,请阅读如下

程序,在空白处填写适当的表达式或语句,使程序完整。

for g in range(1,20):

for m in _______:

for x in range(3,98,3):

if _________ and __________ ==100:

print("

公鸡:

",g,"

母鸡:

",m,"

小鸡:

",x)

【参考答案】***试卷处理标记,请不要删除

一、选择题

1.C

【详解】

本题考查Python程序语法

Python变量命名不能以数字开头、变量b、c必须先定义后使用。故有3处错误,故本题选C

选项

解析:

C

【详解】

本题考查

Python

程序语法

Python变量

命名不能以数字开头、变量

b

c

必须先定义后使用。故有

3

处错误,故本题选

C

选项

2.A

【详解】

本题主要考查服务器的搭建。Python是程序设计软件,Excel是表格处理软

件,IIS是互联网信息服务,Apache是Web服务器软件,IIS和Apache可以用

来搭建本地服务器的软件

解析:

A

【详解】

本题主要考查服务器的搭建。

Python

是程序设计软件,

Excel

是表格处理软件,

IIS

是互联

网信息服务,

Apache

Web

服务器软件,

IIS

Apache

可以用来搭建本地服务器的软件,

故本题选

A

选项。

3

B

【详解】

本题主要考查

Python

输入函数。在

Python

中,

input

()函数的返回结果的数

据类型为字符串

String

型,故本题选

B

选项。

解析:

B

【详解】

本题主要考查

Python

输入函数。在

Python

中,

input

()函数的返回结果的数据类型为字

符串

String

型,故本题选

B

选项。

4

C

【详解】

本题主要考查

Python

程序设计语言中的输入和输出函数。

input

)函数返回

值默认是字符串。

print( )

函数默认是输出后换行。因此

C

选项正确。

【点睛】

解析:

C

【详解】

本题主要考查

Python

程序设计语言中的输入和输出函数。

input

)函数返回值默认是字

符串。

print( )

函数默认是输出后换行。因此

C

选项正确。

【点睛】

5

A

【详解】

本题考查的是人工智能语言。

Python

由于简单易用,是人工智能领域中使用最

广泛的编程语言之一,它可以无缝地与数据结构和其他常用的

AI

算法一起使

用。故选项

A

正确。

解析:

A

【详解】

本题考查的是人工智能语言。

Python

由于简单易用,是人工智能领域中使用最广泛的编程

语言之一,它可以无缝地与数据结构和其他常用的

AI

算法一起使用。故选项

A

正确。

6

D

【详解】

本题主要考查

Python

序列拼接运算。

set = {}

生成的是字典类型,而不是集合类

型,不支持使用

+

,故本题选

D

选项。

解析:

D

【详解】

本题主要考查

Python

序列拼接运算。

set = {}

生成的是字典类型,而不是集合类型,不支持

使用

+

,故本题选

D

选项。

7

A

【详解】

本题考查

Python

数据类型相关的知识点

Python

不支持

char

类型、

byte

类型。故本题选

A

选项

解析:

A

【详解】

本题考查

Python

数据类型相关的知识点

Python

不支持

char

类型、

byte

类型。故本题选

A

选项

8.B

【详解】

本题主要考查Python文件操作函数。open ()是文件打开函数,read () 、

write ()是文件读写函数;()用于从json文件中读取数据,故本题

选B选项

解析:

B

【详解】

本题主要考查

Python

文件操作函数。

open ()

是文件打开函数,

read ()

write ()

是文件读写

函数;

()

用于从

json

文件中读取数据,故本题选

B

选项。

9

B

【详解】

本题主要考查

Python

语法。

Python3.8

支持中文做标识符,

Python

标识符区分

字母的大小写,

Python

命令提示符是

>>>

,命令中用到的标点符号只能是英文

字符,故本题选

B

选项

解析:

B

【详解】

本题主要考查

Python

语法。

Python3.8

支持中文做标识符,

Python

标识符区分字母的大小

写,

Python

命令提示符是

>>>

,命令中用到的标点符号只能是英文字符,故本题选

B

项。

10

A

【详解】

本题主要考查

Python

表达式的运算。

3%2=1

5//2=2

1*2=2

1+3/3=2

,故本题

A

选项。

解析:

A

【详解】

本题主要考查

Python

表达式的运算。

3%2=1

5//2=2

1*2=2

1+3/3=2

,故本题选

A

选项。

11

B

【详解】

本题主要考查

Python

表达式的运算。

a=6

b=-4

a/2 + b%2*3 =6/2+(-

4%2*3)=3.0+0=3.0

,故本题选

B

选项。

解析:

B

【详解】

本题主要考查

Python

表达式的运算。

a=6

b=-4

a/2 + b%2*3 =6/2+(-4%2*3)=3.0+0=3.0

,故

本题选

B

选项。

12

B

【详解】

本题主要考查

Python

语句。对于语句

x = (y = z + 1)

y= z+1

是一个赋值语句,

作为一个整体没有返回值,

x

等于的是个空值,故该语句是非法的,故本题选

B

选项。

解析:

B

【详解】

本题主要考查

Python

语句。对于语句

x = (y = z + 1)

y= z+1

是一个赋值语句,作为一个整

体没有返回值,

x

等于的是个空值,故该语句是非法的,故本题选

B

选项。

13

B

【详解】

本题主要考查算法流程图知识点。程序代码中有双分支语句

if –else

。所以选

B

绘制有分支流程图,故本题选

B

选项。

解析:

B

【详解】

本题主要考查算法流程图知识点。程序代码中有双分支语句

if –else

。所以选

B

绘制有分支

流程图,故本题选B选项。

14.A

【详解】

本题考查Python语句。在Python中要交换变量a和b中的值,可以使用的语

句组是t=a;a=b;b=t也可以是a,b=b,a,故本题选A。

解析:

A

【详解】

本题考查Python语句。在Python中要交换变量a和b中的值,可以使用的语句组是

t=a;a=b;b=t也可以是a,b=b,a,故本题选A。

15.D

【详解】

本题考查的是程序语言。常见的高级编程语言有:C 、VB、Python等。机器语

言是计算机语言的一种不属于高级语言。故应选D。

【点睛】

解析:

D

【详解】

本题考查的是程序语言。常见的高级编程语言有:

C

VB

Python

等。机器语言是计算机

语言的一种不属于高级语言。故应选

D

【点睛】

二、程序填空

16.D n=len(password) ch=password[i] x=n1+n2+n3

【详解】

本题主要考查

Python

程序的执行与调试。

①“12abcd5

含有三类字符,则输出结果为

强,选

D

选项。

此处取密码的长度,将其赋给变量

n

len()

是返回字符串的长度,故填

n=len(password)

③ch

是取密码的每一位进行判断,故此处填

ch=password[i]

当出现

数字时

n1=1

,当出现字母时

n2=1

,当出现其他字符时

n3=1

x

用来统计有几类字符,故

此处填

x=n1+n2+n3

17.money*(1+rate)

将输入的字符串年利率由百分制转换为浮点数

循环

【详解】

本题主要考查

Python

程序设计。①

round(x,n)

函数是将

x

n

位,此处是计算当前年份的

收益,收益

=

本金

+

本金

*

年利率,故填

money*(1+rate)

,并将结果取

2

位。②程序第

2

行的

作用是将输入的字符串年利率由百分制转换为浮点数,并赋值给变量

rate

。③该程序主要

是通过

while

实现循环结构。

18.k=len(s)

ord(s[i])==ord(s[i+1])-1 and flag==False 或

ord(s[i])==ord(s[i+1])-1 and not flag 或 ord(s[i])+1==ord(s[i+1]) and

flag==False 或 ord(s[i])+1==ord(s[i+1]) and not flag

flag = False

【详解】

本题主要考查

Python

程序的执行与调试。①第一空将输入的字符串

s

的长度赋给变量

k

故填k=len(s)。②flag用来标记是否有连续字符构成的升序段,第二空判断相邻位置后面

字符的

ASCII

值是否比前面的字符的

ASCII

值大

1

flag

False

,故填

ord(s[i])==ord(s[i+1])-1 and flag==False 或 ord(s[i])==ord(s[i+1])-1 and not

flag 或 ord(s[i])+1==ord(s[i+1]) and flag==False 或 ord(s[i])+1==ord(s[i+1])

and not flag。③如果不满足if判断条件,则需要将该字符加到变量result中,同时赋

值flag为False,表示当前没有连续字符构成的升序段,需要继续判断寻找,故填flag =

False。

19.A

C

【详解】

本题主要考查

Python

程序设计。①此处将

n

取余

2

,用

append

函数将值追加到列表

result

中,故此处填

n%2

,选A选项。②当

n

大于

0

时,

n

整除

2

继续循环,循环结束使用

reverse

函数,将

result

列表中的元素逆转,故此处填

n//2

,选

C

选项。

20.for i in range(100,1000):

a=i//100

b= (i//10)%10

c=i%10

if i==a*a*a+b*b*b+c*c*c:

print(i)

【详解】

本题主要考查程序设计。可通过

Python

程序设计实现题干要求,通过

for

循环找出水仙花

数,依次取出三位数的每一位数,其中百位

a= i//100

,十位

b= (i//10)%10

,个位

c=i%10

然后判断是否是水仙花数,具体代码如下:

for i in range(100,1000):

a=i//100

b= (i//10)%10

c=i%10

if i==a*a*a+b*b*b+c*c*c:

print(i)

21.range(1,33) g+m+x==100 5*g+3*m+x/3

【详解】

本题考查的是算法中的经典问题。百鸡百钱问题是典型的枚举算法解决,枚举算法的关键

就是找到问题解决的条件和枚举范围。


本文标签: 字符 本题 考查