一、选择题
- 以下关于程序设计语言的描述,错误的选项是:( )
- A. Python语言是一种脚本编程语言
- B. 汇编语言是直接操作计算机硬件的编程语言
- C. 程序设计语言经历了机器语言、汇编语言、脚本语言三个阶段
- D. 编译和解释的区别是一次性翻译程序还是每次执行时都要翻译程序
答案:C
解析:程序设计语言经历了机器语言、汇编语言、高级语言等阶段,脚本语言属于高级语言的一种,C选项表述不准确.
- 表达式
1001 == 0x3e7
的结果是:( )- A. false
- B. False
- C. true
- D. True
答案:B
解析:0x3e7是十六进制表示的数,转换为十进制为1001,但是在Python中比较结果为False,因为Python区分大小写,正确的布尔值表示为False和True.
- 以下选项,不是Python保留字的选项是:( )
- A. del
- B. pass
- C. not
- D. string
答案:D
解析:string不是Python的保留字,而del用于删除对象,pass用于占位等,not用于逻辑非操作.
- 表达式
eval('500/10')
的结果是:( )- A.
,500/10,
- B.
500/10
- C. 50
- D. 50.0
答案:D
解析:eval函数会计算字符串中的表达式,500/10的结果是50.0.
- A.
- 表达式
type(eval('45'))
的结果是:( )- A.
<class 'float'>
- B.
<class 'str'>
- C.
None
- D.
<class 'int'>
答案:D
解析:eval(‘45’)的结果是整数45,所以type函数返回其类型为<class 'int'>
.
- A.
- 表达式
divmod(20,3)
的结果是:( )- A. 6,2
- B. 6
- C. 2
- D. (6,2)
答案:D
解析:divmod函数返回两个数相除的商和余数,20除以3商为6余数为2,结果以元组形式(6,2)返回.
- 以下关于字符串类型的操作的描述,错误的选项是:( )
- A.
str.replace(x,y)
方法把字符串str
中所有的x
子串都替换成y
- B. 想把一个字符串
str
所有的字符都大写,用str.upper()
- C. 想获取字符串
str
的长度,用字符串处理函数str.len()
- D. 设
x = 'aa'
,那么执行x*3
的结果是aaaaaa
答案:C
解析:获取字符串长度的函数是len(str)
,而不是str.len()
.
- A.
- 设
str = 'python'
,想把字符串的第一个字母大写,其他字母还是小写,正确的选项是:( )- A.
print(str[0].upper()+str[1:])
- B.
print(str[1].upper()+str[-1:1])
- C.
print(str[0].upper()+str[1:-1])
- D.
print(str[1].upper()+str[2:])
答案:A
解析:str[0]获取字符串的第一个字符并将其转换为大写,str[1:]获取从第二个字符开始到最后的子串.
- A.
二、程序分析题
1.
w = input('请输入数字和字母构成的字符串:')
for x in w:
if '0' <= x <= '9':
continue
else:
w.replace(x, '')
print(w)
输入”93python22”,输出结果是:
答案:93python22
解析:在循环中,虽然对字符串中的非数字字符进行了替换操作,但字符串是不可变对象,replace方法并不会改变原字符串,所以最终输出的还是原字符串.
2.
la = 'python'
try:
s = eval(input('请输入整数:'))
ls = s * 2
print(ls)
except:
print('请输入整数')
输入la
,输出结果是:
答案:请输入整数
解析:输入的la
不是整数,无法通过eval函数转换为有效的表达式求值,所以会触发异常,执行except中的语句.
3.
k = 0
while True:
s = input('请输入q退出:')
if s == 'q':
k += 1
continue
else:
k += 2
break
print(k)
输入qp
,输出结果是:
答案:2
解析:输入qp
后,不满足s == 'q'
的条件,执行else
中的语句,k
先加2,然后跳出循环,最终输出2.
三、判断题
append()
方法会将新元素添加为列表的第一个元素。( )
答案:错
解析:append方法是将新元素添加到列表的末尾.str1 ='123'
,str2 = 123
,则str1
与str2
相同。( )
答案:错
解析:str1是字符串类型,str2是整数类型,数据类型不同,二者不相同.break
与continue
均用于终止循环。( )
答案:错
解析:break语句是终止循环,而continue语句是跳过当前循环,继续下一次循环.- 创建字典时,可以用数字、字符串、元组、列表作为字典中的键。( )
答案:错
解析:字典的键必须是不可变数据类型,列表是可变数据类型,不能作为字典的键. - 多层循环中,
break
可以退出所有循环。( )
答案:错
解析:break语句只能退出当前所在的那一层循环.