Python程序设计题库——第五章

第五章

一. 单选题(共60题,24分)

  1. 以下选项中,关于Python字符串的描述错误的是( )
  • A. Python语言中,字符串是用一对双引号""或者一对单引号 '' 括起来的零个或者多个字符
  • B. 字符串包括两种序号体系:正向递增和反向递减
  • C. 字符串是字符的序列,可以按照单个字符或者字符片段进行索引
  • D. Python字符串提供区间访问方式,采用[N:M]格式,表示字符串中从N到M的索引子字符串(包含N和M)

答案:D

  1. 给出如下代码TempStr ="Hello World" 可以输出“World”子串的是( )
  • A. print(TempStr[–5:0])
  • B. print(TempStr[–5:])
  • C. print(TempStr[–5: –1])
  • D. print(TempStr[–4: –1])

答案:B

  1. 关于eval函数,以下选项中描述错误的是( )
  • A. eval函数的定义为:eval(source, globals=None, locals=None, /)
  • B. 执行>>> eval("Hello")和执行>>> eval(" 'Hello' ")得到相同的结果
  • C. eval函数的作用是将输入的字符串转为Python语句,并执行该语句
  • D. 如果用户希望输入一个数字,并用程序对这个数字进行计算,可以采用eval(input( ))组合

答案:B

  1. 利用print()格式化输出,能够控制浮点数的小数点后两位输出的是( )
  • A.
  • B.
  • C.
  • D.

答案:B

  1. 以下选项中可访问字符串s从右侧向左第三个字符的是( )
  • A. s[3]
  • B. s[:-3]
  • C. s[-3]
  • D. s[0:-3]

答案:C

  1. 关于Python字符串,以下选项中描述错误的是( )
  • A. 字符串可以保存在变量中,也可以单独存在
  • B. 字符串是一个字符序列,字符串中的编号叫“索引”
  • C. 可以使用datatype()测试字符串的类型
  • D. 输出带有引号的字符串,可以使用转义字符\

答案:C

  1. 下面代码的输出结果是>>> hex(255)
  • A. '0eff
  • B. '0off
  • C. '0xff'
  • D. '0bff'

答案:C

  1. 面代码的输出结果是( )>>> oct(–255)
  • A. '0d–377'
  • B. '0o–377'
  • C. '–0d377'
  • D. '–0o377'

答案:D

  1. 下面代码的输出结果是( )>>> bin(10)
  • A. '0o1010'
  • B. '0d1010'
  • C. '0b1010'
  • D. '0x1010'

答案:C

  1. 不是用于处理中文的字符编码。
  • A. gb2312
  • B. gbk
  • C. big5
  • D. ascii

答案:D

  1. 用()函数接收用输入的数据
  • A. accept()
  • B. input()
  • C. readline()
  • D. login()

答案:B

  1. 在print函数的输出字符串中可以将( )作为参数,代表后面指定要输出的字符串
  • A. %d
  • B. %c
  • C. %s
  • D. %t

答案:C

  1. 字符串是一个字符序列,例如,字符串s,从右侧向左取第3个字符用( )索引?
  • A. s[3]
  • B. s[-3]
  • C. s[0:-3]
  • D. s[:-3]

答案:B

  1. 若 a = 'abcd' ,若想将 a 变为 'ebcd' ,则下列语句正确的是( )
  • A. a[0] = 'e'
  • B. a.replace('a', 'e')
  • C. a[1] = 'e'
  • D. a = 'e' + a[1:]

答案:D

  1. 字符串是一个字符序列,例如,字符串s,从右侧向左第2个字符用( )索引?
  • A. s[2]
  • B. s[-2]
  • C. s[0:-2]
  • D. s[:-2]

答案:B

  1. 获得字符串s长度的方法是( )
  • A. s.len()
  • B. s.length
  • C. len(s)
  • D. length(s)

答案:C

  1. 字符串函数strip()的作用是( )
  • A. 按照指定字符分割字符串为数组
  • B. 连接两个字符串序列
  • C. 去掉字符串两侧空格或指定字符
  • D. 替换字符串中特定字符"

答案:C

  1. len("abc")的长度是3,len("老师好")的长度是( )
  • A. 1
  • B. 3
  • C. 6
  • D. 9

答案:B

  1. 字符串是一个连续的字符序列,用( )方式打印出可以换行的字符串。
  • A. 使用转义符\
  • B. 使用\n
  • C. 使用空格
  • D. 使用“\换行”

答案:B

  1. 字符串是一个字符序列,例如,字符串s,从右侧向左第5个字符用( )索引。
  • A. s[:-5]
  • B. s[-5]
  • C. s[0:-5]
  • D. s[5]

答案:B

  1. 以下关于字符串处理的描述错误的是( )项?
  • A. print('C:\file\time'),输出结果是C:\file\time。
  • B. Python 中字符串是以单引号、双引号或三引号括起来的任意文本,如果字符串赋值的时候,内部有单引号或双引号时如果不想使用转义字符常常可以使用r运算符来表示。
  • C. ""符号可以被用来表示转义符号,例如'doesn't'和"doesn't"都表示字符串doesn't。
  • D. 被单引号('...')或者双引号("...")包围的都是字符串。

答案:A

  1. 在print函数的输出字符串中可以将( )作为参数,代表后面指定要输出的一个字符。
  • A. %d
  • B. %c
  • C. %t
  • D. %s

答案:B

  1. 若 a = 'abcd' ,若想将 a 变为 'abce' ,则下列语句正确的是( )
  • A. a[-1] = 'e'
  • B. a.replace('d', 'e')
  • C. a = a[0:3]+'e'
  • D. a[4] = 'e'

答案:C

  1. 关于字符串下列说法错误的是( )
  • A. 字符应该视为长度为1的字符串
  • B. 字符串以\0标志字符串的结束
  • C. 既可以用单引号,也可以用双引号创建字符串
  • D. 在三引号字符串中可以包含换行回车等特殊字符

答案:B

  1. s = "the sky is blue",表达式 print(s[-4:], s[:-4]) 的结果是( )
  • A. the sky is blue
  • B. blue is sky the
  • C. sky is blue the
  • D. blue the sky is

答案:D

  1. 以下关于 random 库的描述,正确的是:
  • A. 设定相同种子,每次调用随机函数生成的随机数不相同
  • B. 通过 from random import * 引入 random 随机库的部分函数
  • C. uniform(0,1) 与 uniform(0.0,1.0) 的输出结果不同,前者输出随机整数,后者输出随机小数
  • D. getrandbits(K) 是生成一个长度为K位的二进制数

答案:D

  1. 给出如下代码
s = 'Python is beautiful!' 

可以输出“python”的是( )

  • A. print(s[0:6].lower())
  • B. print(s[:–14])
  • C. print(s[0:6])
  • D. print(s[–21: –14].lower)

答案:A

  1. 给出如下代码
s = 'Python is Open Source!' 
print(s[0:].upper())

上述代码的输出结果是( )

  • A. PYTHON
  • B. PYTHON IS OPEN SOURCE
  • C. Python is Open Source!
  • D. PYTHON IS OPEN SOURCE!

答案:D

  1. 下面代码的执行结果是( )
a = 123456789 
b = "*" 
print("{0:{2}>{1},}\n{0:{2}^{1},}\n{0:{2}<{1},}".format(a,20,b))
  • A. *********123,456,789 ****123,456,789***** 123,456,789*********
  • B. ****123,456,789***** *********123,456,789 123,456,789*********
  • C. ****123,456,789***** 123,456,789********* *********123,456,789
  • D. *********123,456,789 123,456,789********* ****123,456,789*****

答案:A

  1. 下面代码的执行结果是( )
>>> x = "Happy Birthday to you!" 
>>> x * 3
  • A. 系统报错
  • B. Happy Birthday to you!
  • C. Happy Birthday to you!Happy Birthday to you!Happy Birthday to you!'
  • D. Happy Birthday to you! Happy Birthday to you! Happy Birthday to you!

答案: C

  1. 给出如下代码
s = "Alice" 
print(s[::–1])

上述代码的输出结果是( )

  • A. ecilA
  • B. ALICE
  • C. Alice
  • D. Alic

答案:A

  1. 给出如下代码
s= "abcdefghijklmn" 
print(s[1:10:3])

上述代码的输出结果是( )

  • A. behk
  • B. adgj
  • C. beh
  • D. adg

答案:C

  1. 给出如下代码
for i in range(12):   
    print(chr(ord(" ")+i),end=" ")

以下选项描述错误的是( )

  • A. 输出结果为! " # $ % & ' ( ) * +
  • B. 系统报错
  • C. chr(x)函数返回Unicode编码对应的字符
  • D. ord(" ")返回" "字符对应的Unicode编码

答案:B

  1. 给出如下代码 以下选项中描述正确的是( )
for i in range(6):   
    print(chr(ord(9801)+i),end="")
  • A. chr ("a")返回"a"字符对应的Unicode编码
  • B. 系统报错
  • C. 输出结果为♈♉♊♋♌♍
  • D. ord(x)函数返回x的Unicode编码对应的字符

答案:B

  1. 给出如下代码:如下描述错误的是( )
for i in range(10):   
    print(chr(ord("!")+i),end="")
  • A. 系统报错
  • B. ord("!")返回"!"字符对应的Unicode编码
  • C. 输出结果为!"#$%&'()*
  • D. chr(x)函数返回Unicode编码对应的字符

答案:A

  1. 下面代码的输出结果是( )
s1 = "The python language is a scripting language." 
s1.replace('scripting','general') 
print(s1)
  • A. The python language is a scripting language.
  • B. 系统报错
  • C. ['The', 'python', 'language', 'is', 'a', 'scripting', 'language.']
  • D. The python language is a general language.

答案:A

  1. 下面代码的输出结果是( )
s1 = "The python language is a scripting language." 
s2 = s1.replace('scripting','general') 
print(s2)
  • A. The python language is a scripting language.
  • B. ['The', 'python', 'language', 'is', 'a', 'scripting', 'language.']
  • C. 系统报错
  • D. The python language is a general language.

答案:D

  1. 下面代码的输出结果是( )
s = "The python language is a cross platform language." 
print(s.find('language',30))
  • A. 系统报错
  • B. 40
  • C. 11
  • D. 10

答案:B

  1. 下面代码的输出结果是( )
s = "The python language is a multimodel language." 
print(s.split(' '))
  • A. Thepythonlanguageisamultimodellanguage.
  • B. ['The', 'python', 'language', 'is', 'a', 'multimodel', 'language.']
  • C. The python language is a multimodel language.
  • D. 系统报错

答案:B

  1. 下面代码的输出结果是( )
a ="Python" 
b = "A Superlanguage" 
print("{:->10}:{:-<19}".format(a,b))
  • A. ----Python:A Superlanguage----
  • B. ----Python:----A Superlanguage
  • C. The python language is a multimodel language.
  • D. Python----:----A Superlanguage

答案:A

  1. 以下选项中,输出结果为False的是( )
  • A. >>> 'python' < 'pypi'
  • B. >>> 'ABCD' == 'abcd'.upper()
  • C. >>> 'python123' > 'python'
  • D. >>> ''<'a'

答案:A

  1. 下面代码的输出结果是( )
a = "alex" 
b = a.capitalize() 
print(a,end=",") 
print(b)
  • A. alex,ALEX
  • B. ALEX,alex
  • C. alex,Alex
  • D. Alex,Alex

答案:C

  1. 下面代码的输出结果是( )
a = 20 
b = a | 3 
a &= 7 
print(b ,end=",") 
print(a)
  • A. 6.66667,4
  • B. 4,6.66667
  • C. 4,23
  • D. 23,4

答案:D

  1. 下面代码的输出结果是( )
a = "ac" 
b = "bd" 
c = a + b 
print(c)
  • A. dbac
  • B. abcd
  • C. acbd
  • D. bdac

答案:C

  1. 下面代码的输出结果是( )
str1 = "mysqlsqlserverPostgresQL" 
str2 = "sql" 
ncount = str1.count(str2) 
print(ncount)
  • A. 2
  • B. 5
  • C. 4
  • D. 3

答案:A

  1. 下面代码的输出结果是( )
>>> False/True
  • A. True
  • B. 0
  • C. 0.0
  • D. False

答案:C

  1. 下面代码的输出结果是( )
str1 = "mysqlsqlserverPostgresQL" 
str2 = "sql" 
ncount = str1.count(str2,10) 
print(ncount)
  • A. 0
  • B. 3
  • C. 4
  • D. 2

答案:A

  1. 给出如下代码: s = list("巴老爷有八十八棵芭蕉树,来了八十八个把式要在巴老爷八十八棵芭蕉树下\ 住。老爷拔了八十八棵芭蕉树,不让八十八个把式在八十八棵芭蕉树下住。八十八个\ 把式烧了八十八棵芭蕉树,巴老爷在八十八棵树边哭。") 以下选项中能输出字符“八”出现次数的是( )
  • A. print(s.count("八"))
  • B. print(s.index("八"))
  • C. print(s.index("八"),6,len(s))
  • D. print(s.index("八"),6)

答案:A

  1. 给出如下代码: s = list("巴老爷有八十八棵芭蕉树,来了八十八个把式要在巴老爷八十八棵芭蕉树下住。老爷拔了八十八棵芭蕉树,不让八十八个把式在八十八棵芭蕉树下住。八十八个把式烧了八十八棵芭蕉树,巴老爷在八十八棵树边哭。") 以下选项中能输出字符“八”第一次出现的索引位置的是( )
  • A. print(s.index("八"),6,len(s))
  • B. print(s.count("八"))
  • C. print(s.index("八"))
  • D. print(s.index("八"),6)

答案:C

  1. 以下关于字符串处理正确的是( )项?
  • A. 字符串是自带索引的,对变量word = "Python",word[1]是字符y,但是word[-1]会报越界错误。
  • B. +号可以用来拼接两个字符串,对于以下代码的输出字符串是Python >>> prefix = "Py" >>> prefix + 'thon'
  • C. 字符串的索引有两个边界,前边界和后边界都是包括的。
  • D. 对于字符串"apple", 3 * "apple"的结果为"3apple"。

答案:B

  1. 当键盘输入”3”的时候,以下程序的输出结果是( )
r = input("请输入半径:") 
ar = 3.1415 * r *r 
print("{:.0f}".format(ar))
  • A. 28
  • B. 28.27
  • C. 29
  • D. Type Error

答案:D

  1. 以下程序的输出结果是:
s = "python\n编程\t很\t容易\t学" 
print(len(s))
  • A. 20
  • B. 12
  • C. 5
  • D. 16

答案:D

  1. 关于Python字符编码,以下选项中描述错误的是( )
  • A. ord(x)和chr(x)是一对函数
  • B. Python默认采用Unicode字符编码
  • C. chr(x)将字符转换为Unicode编码
  • D. Python可以处理任何字符编码文本

答案:C

  1. 当需要在字符串中使用特殊字符时,Python使用( )作为转义字符的起始符号
  • A. \
  • B. /
  • C. #
  • D. %

答案:A

  1. 下列数据中,不属于字符串的是( )
  • A. 'ab'
  • B. '''perface'''
  • C. "52wo"
  • D. abc

答案:D

  1. 使用( )符号对浮点类型的数据进行格式化
  • A. %c
  • B. %f
  • C. %d
  • D. %s

答案:B

  1. 字符串'Hi,Andy'中,字符'A'对应的下标位置为( )
  • A. 1
  • B. 2
  • C. 3
  • D. 4

答案:C

  1. 下列方法中,能够返回某个子串在字符串中出现次数的是( )
  • A. length
  • B. index
  • C. count
  • D. find

答案:C

  1. 下列方法中,能够让所有单词的首字母变成大写的方法是( )
  • A. capitalize
  • B. title
  • C. upper
  • D. ljust

答案:B

  1. 字符串的strip方法的作用是( )
  • A. 删除字符串头尾指定的字符
  • B. 删除字符串末尾指定的字符
  • C. 删除字符串头部指定的字符
  • D. 通过指定分隔符对字符串切片

答案:A

二. 填空题(共121题,48.4分)

  1. 表达式'ac' in 'abce'的值为___________
  • 答案: False
  1. 表达式not 3的值为___________
  • 答案: False
  1. 表达式'abc' in ('abcdefg')的值为___________
  • 答案: True
  1. 表达式'abc' in ['abcdefg']的值为___________
  • 答案: False
  1. 表达式'\x41'=='A'的值为___________
  • 答案: True
  1. Python语句''.join(list('hello world!'))执行的结果是___________
  • 答案: 'hello world!'
  1. 转义字符r’\n’的含义是___________
  • 答案: 回车换行
  1. 已知列表对象x=['11','2','3'],则表达式max(x)的值为___________
  • 答案: '3'
  1. 表达式min(['11','2','3'])的值为___________
  • 答案: '11'
  1. 已知列表对象x=['11','2','3'],则表达式max(x,key=len)的值为___________
  • 答案: '11'
  1. 已知path=r'c:\test.html',那么表达式path[:-4]+'htm'的值为___________
  • 答案: 'c:\test.htm'
  1. 表达式list(str([1,2,3]))==[1,2,3]的值为___________
  • 答案: False
  1. 表达式str([1,2,3])的值为___________
  • 答案: '[1, 2, 3]'
  1. 表达式str((1,2,3))的值为___________
  • 答案: '(1, 2, 3)'
  1. 表达式sum(range(1,10,2))的值为___________
  • 答案: 25
  1. 表达式sum(range(1,10))的值为___________
  • 答案: 45
  1. 表达式'%c'%65的值为___________
  • 答案: 'A'
  1. 表达式'%s'%65的值为___________
  • 答案: '65'
  1. 表达式'%d,%c'%(65,65)的值为___________
  • 答案: '65,A'
  1. 表达式'The first:{1},the second is{0}'.format(65,97)的值为___________
  • 答案: 'The first:97,the second is65'
  1. 表达式'{0:#d},{0:#x},{0:#o}'.format(65)的值为___________
  • 答案: '65,0x41,0o101'
  1. 表达式isinstance('abcdefg',str)的值为___________
  • 答案: True
  1. 表达式isinstance('abcdefg',object)的值为___________
  • 答案: True
  1. 表达式isinstance(3,object)的值为___________
  • 答案: True
  1. 表达式'abcabcabc'.rindex('abc')的值为___________
  • 答案: 6
  1. 表达式':'.join('abcdefg'.split('cd'))的值为___________
  • 答案: 'ab:efg'
  1. 表达式'Hello world.I like Python.'.rfind('python')的值为___________
  • 答案: -1
  1. 表达式'abcabcabc'.count('abc')的值为___________
  • 答案: 3
  1. 表达式'apple.peach,banana,pear'.find('p')的值为___________
  • 答案: 1
  1. 表达式'apple.peach,banana,pear'.find('ppp')的值为___________
  • 答案: -1
  1. 表达式'abcdefg'.split('d')的值为___________
  • 答案: ['abc', 'efg']
  1. 表达式':'.join('1,2,3,4,5'.split(','))的值为___________
  • 答案: '1:2:3:4:5'
  1. 表达式','.join('abccc\n\n\nddd'.split())的值为___________
  • 答案: 'abccc,ddd'
  1. 表达式'Hello world'.upper()的值为___________
  • 答案: 'HELLO WORLD'
  1. 表达式'Hello world'.lower()的值为___________
  • 答案: 'hello world'
  1. 表达式'Hello world'.lower().upper()的值为___________
  • 答案: 'HELLO WORLD'
  1. 表达式'Hello world'.swapcase().swapcase()的值为___________
  • 答案: 'Hello world'
  1. 表达式r'c:\windows\notepad.exe'.endswith('.exe')的值为___________
  • 答案: True
  1. 表达式r'c:\windows\notepad.exe'.endswith(('.jpg','.exe'))的值为___________
  • 答案: True
  1. 表达式'C:\\Windows\\notepad.exe'.startswith('C:')的值为___________
  • 答案: True
  1. 表达式len('Hello world!'.ljust(20))的值为___________
  • 答案: 20
  1. 表达式len('abcdefg'.ljust(3))的值为___________
  • 答案: 7
  1. 表达式'a'+'b'的值为___________
  • 答案: (1)'ab'
  1. 已知x='123'和y='456',那么表达式x+y的值为___________
  • 答案: '123456'
  1. 表达式'a'.join('abc'.partition('a'))的值为___________
  • 答案: 'aaabc'
  1. 表达式re.split('\.+','alpha.beta...gamma..delta')的值为___________
  • 答案: ['alpha','beta','gamma','delta']
  1. 已知x='a234b123c',并且re模块已导入,则表达式re.split('\d+',x)的值为___________
  • 答案: ['a', 'b', 'c']
  1. 表达式''.join('asdssfff'.split('sd'))的值为___________
  • 答案: 'assfff'
  1. 表达式''.join(re.split('[sd]','asdssfff'))的值为___________
  • 答案: 'afff'
  1. 假设re模块已导入,那么表达式re.findall('(\d)\\1+','33abcd112')的值为___________
  • 答案: ['3', '1']
  1. 语句print(re.match('abc','defg'))输出结果为___________
  • 答案: None
  1. 表达式'Hello world!'[-4]的值为___________
  • 答案: 'r'
  1. 表达式'Hello world!'[-4:]的值为___________
  • 答案: 'rld!'
  1. 表达式'test.py'.endswith(('.py','.pyw'))的值为___________
  • 答案: True
  1. 表达式len('abc'.ljust(20))的值为___________
  • 答案: 20
  1. 代码print(re.match('^[a-zA-Z]+$','abcDEFG000'))的输出结果为___________
  • 答案: None
  1. 当在字符串前加上小写字母___________或大写字母___________表示原始字符串,不对其中的任何字符进行转义。
  • 答案: r 、 R
  1. 在设计正则表达式时,___________字符紧随任何其限定符(*、+、?、{n}、{n,}、{n,m})之后时,匹配模式是“非贪心的”,匹配搜索到的、尽可能短的字符串。
  • 答案: ?
  1. 假设正则表达式模块re已导入,那么表达式re.sub('\d+','1','a12345bbbb67c890d0e')的值为___________
  • 答案: a1bbbb1c1d1e
  1. 表达式len('中国'.encode('utf-8'))的值为___________
  • 答案: 6
  1. 表达式len('中国'.encode('gbk'))的值为___________
  • 答案: 4
  1. 表达式chr(ord('A')+2)的值为___________
  • 答案: 'C'
  1. 表达式'abcab'.replace('a','yy')的值为___________
  • 答案: 'yybcyyb'
  1. 已知table=''.maketrans('abcw','xyzc'),那么表达式'Hellowworld'.translate(table)的值为___________
  • 答案: 'Helloccorld'
  1. 表达式'helloworld,helloweveryone'.replace('hello','hi')的值为___________
  • 答案: 'hiworld,hiweveryone'
  1. 已知字符串x='hello world',那么执行语句x.replace('hello','hi')之后,x的值为。
  • 答案: 'hello world'
  1. 正则表达式元字符___________用来表示该符号前面的字符或子模式1次或多次出现。
  • 答案: +
  1. 已知x='abcd',那么表达式','.join(x.split())的值为___________
  • 答案: 'abcd'
  1. 正则表达式元字符___________用来表示该符号前面的字符或子模式0次或多次出现。
  • 答案: *
  1. 表达式'abcab'.strip('ab')的值为___________
  • 答案: 'c'
  1. 表达式[str(i)foriinrange(3)]的值为___________
  • 答案: ['0', '1', '2']
  1. 表达式'abc.txt'.endswith(('.txt','.doc','.jpg'))的值为___________
  • 答案: True
  1. 代码print(1,2,3,sep=':')的执行结果为___________
  • 答案: 1:2:3
  1. 代码的执行结果为___________
for i in range(3):
    print(i,end=',')
  • 答案: 0,1,2,
  1. 表达式eval('''__import__('math').sqrt(9)''')的值为___________
  • 答案: 3.0
  1. 表达式eval("__import__('math').sqrt(3**2+4**2)")的值为___________
  • 答案: 5.0
  1. 表达式eval('3+5')的值为___________
  • 答案: 8
  1. 表达式eval('[1,2,3]')的值为___________
  • 答案: [1, 2, 3]
  1. 假设math标准库已导入,那么表达式eval('math.sqrt(4)')的值为___________
  • 答案: 2.0
  1. 已知x为非空列表,那么表达式random.choice(x) in x的值为___________
  • 答案: True
  1. 表达式'abc10'.isalnum()的值为___________
  • 答案: True
  1. 表达式'abc10'.isalpha()的值为___________
  • 答案: False
  1. 表达式'abc10'.isdigit()的值为___________
  • 答案: False
  1. 表达式'C:\\windows\\notepad.exe'.endswith('.exe')的值为___________
  • 答案: True
  1. 表达式'%s'%[1,2,3]的值为___________
  • 答案: '[1, 2, 3]'
  1. 表达式'aaasdf'.lstrip('as')的值为___________
  • 答案: 'df'
  1. 表达式'aaasdf'.lstrip('af')的值为___________
  • 答案: 'sdf'
  1. 表达式'aaasdf'.strip('af')的值为___________
  • 答案: 'sd'
  1. 表达式'aaasdf'.rstrip('af')的值为___________
  • 答案: 'aaasd'
  1. 表达式len('SDIBT')的值为___________
  • 答案: 5
  1. 表达式'Hello world!'.count('l')的值为___________
  • 答案:

    3

  1. 已知x='abcdefg',则表达式x[3:]+x[:3]的值为___________
  • 答案: 'defgabc'
  1. 字符串编码格式UTF8使用___________个字节表示一个汉字。
  • 答案: 3
  1. 字符串编码格式GBK使用___________个字节表示一个汉字。
  • 答案: 2
  1. 已知字符串编码格式utf8使用3个字节表示一个汉字、1个字节表示英语字母,那么表达式len('abc你好')的值为___________。
  • 答案: 5
  1. 已知字符串编码格式utf8使用3个字节表示一个汉字、1个字节表示英语字母,那么表达式len('abc你好'.encode())的值为___________
  • 答案: 9
  1. 已知字符串编码格式gbk使用2个字节表示一个汉字、1个字节表示英语字母,那么表达式len('abc你好'.encode('gbk'))的值为___________
  • 答案: 7
  1. 已知ord('A')的值为65并且hex(65)的值为'0x41',那么表达式'\x41b'的值为___________
  • 答案: 'Ab'
  1. 已知formatter='good{0}'.format,那么表达式list(map(formatter,['morning']))的值为___________
  • 答案: ['goodmorning']
  1. 已知x='hello world.',那么表达式x.find('x')和x.rfind('x')的值都为___________
  • 答案: -1
  1. 表达式':'.join('hello world.'.split())的值为___________
  • 答案: 'hello:world.'
  1. 表达式':'.join('abcd'.split(maxsplit=2))的值为___________
  • 答案: 'abcd'
  1. 已知x='hello world',那么表达式x.replace('l','g')的值为___________
  • 答案: 'heggo worgd'
  1. 假设已成功导入Python标准库string,那么表达式len(string.digits)的值为___________
  • 答案: 10
  1. 表达式'aaaassddf'.strip('af')的值为___________
  • 答案: 'ssdd'
  1. 表达式len('aaaassddf'.strip('afds'))的值为___________
  • 答案: 0
  1. 表达式len('hello world'[100:])的值为___________
  • 答案: 0
  1. 表达式chr(ord('a')^32^32)的值为___________
  • 答案: 'a'
  1. 表达式chr(ord('a')^32)的值为___________
  • 答案: 'A'
  1. 已知x='aabcccdddd',那么表达式''.join([v for i,v in enumerate(x[:-1]) if v==x[i+1]])的值为___________
  • 答案: 'accddd'
  1. 假设正则表达式模块re已正确导入,那么表达式''.join(re.findall('\d+','abcd1234'))的值为___________
  • 答案: '1234'
  1. 假设正则表达式模块re已正确导入,那么表达式re.findall('\d+?','abcd1234')的值为___________
  • 答案: ['1', '2', '3', '4']
  1. 假设正则表达式模块re已正确导入,那么表达式re.sub('(.\S)\\1+','\\1','aaaaabb')的值为___________。
  • 答案: 'aaabb'
  • \s:表示空白字符集[\f\n\r\t\v],用于匹配空白字符,包括空格、制表符、换页符等。
  • \S:表示非空白字符集,等价于[^ \f\n\r\t\v],用于匹配非空白字符。
  • \num:此处num表示一个子模式序号的正整数。例如:“(.)\\1”匹配两个连续的相同字符。
  • '(.)\\1+':匹配任意字符的两次或多次重复出现。
  • re.sub(pattern, repl, string[, count=0, flags]):替换匹配到的字符串,即用pattern在string中匹配要替换的字符串,然后把它替换成repl。
  1. 表达式eval('*'.join(map(str,range(1,6))))的值为___________
  • 答案: 120
  1. 正则表达式模块re的___________方法用来编译正则表达式对象。
  • 答案: compile()
  1. 正则表达式模块re的___________方法用来在字符串开始处进行指定模式的匹配。
  • 答案: match()
  1. 正则表达式模块re的___________方法用来在整个字符串中进行指定模式的匹配。
  • 答案: search()
  1. 表达式re.search(r'\w*?(?P<f>\b\w+\b)\s+(?P=f)\w*?','Beautiful is is better than ugly.').group(0)的值为___________
  • 答案: 'is is'
  1. 表达式'Beautiful is bette rthan ugly.'.startswith('Be',5)的值为___________
  • 答案: False
  1. 已知字典x={i:str(i+3) for i in range(3)},那么表达式''.join(x.values())的值为___________
  • 答案: '345'
  1. 切片选取的区间是左闭右( )型的,不包含结束位的值
  • 答案: 开

三. 判断题(共37题,27.6分)

182.在UTF-8编码中一个汉字需要占用3个字节。

  • A. 对
  • B. 错

答案:对

183.在GBK和CP936编码中一个汉字需要2个字节。

  • A. 对
  • B. 错

答案:对

184.在Python中,任意长的字符串都遵守驻留机制。

  • A. 对
  • B. 错

答案:错

185.Python运算符%不仅可以用来求余数,还可以用来格式化字符串。

  • A. 对
  • B. 错

答案:对

186.Python字符串方法replace()对字符串进行原地修改。

  • A. 对
  • B. 错

答案:错

187.如果需要连接大量字符串成为一个字符串,那么使用字符串对象的join()方法比运算符+具有更高的效率。

  • A. 对
  • B. 错

答案:对

188.正则表达式模块re的match()方法是从字符串的开始匹配特定模式,而search()方法是在整个字符串中寻找模式,这两个方法如果匹配成功则返回match对象,匹配失败则返回空值None。

  • A. 对
  • B. 错

答案:对

189.已知x为非空字符串,那么表达式 ''.join(x.split()) == x 的值一定为True。

  • A. 对
  • B. 错

答案:错

190.已知x为非空字符串,那么表达式 ','.join(x.split(',')) == x 的值一定为True。

  • A. 对
  • B. 错

答案:对

191.当作为条件表达式时,[]与None等价。

  • A. 对
  • B. 错

答案:对

192.表达式 [] == None 的值为True。

  • A. 对
  • B. 错

答案:错

193.当作为条件表达式时,{}与None等价。

  • A. 对
  • B. 错

答案:对

194.表达式 {}==None 的值为True。

  • A. 对
  • B. 错

答案:错

195.表达式 pow(3,2) == 3**2 的值为True。

  • A. 对
  • B. 错

答案:对

196.当作为条件表达式时,空值、空字符串、空列表、空元组、空字典、空集合、空迭代对象以及任意形式的数字0都等价于False。

  • A. 对
  • B. 错

答案:对

197.正则表达式对象的match()方法可以在字符串的指定位置开始进行指定模式的匹配。

  • A. 对
  • B. 错

答案:对

198.使用正则表达式对字符串进行分割时,可以指定多个分隔符,而字符串对象的split()方法无法做到这一点。

  • A. 对
  • B. 错

答案:对

199.正则表达式元字符“^”一般用来表示从字符串开始处进行匹配,用在一对方括号中的时候则表示反向匹配,不匹配方括号中的字符。

  • A. 对
  • B. 错

答案:对

200.正则表达式元字符“\s”用来匹配任意空白字符。

  • A. 对
  • B. 错

答案:对

201.正则表达式 元字符“\d”用来匹配任意数字字符。

  • A. 对
  • B. 错

答案:对

202.已知x和y是两个字符串,那么表达式sum((1 for i,j in zip(x,y) if i==j))可以用来计算两个字符串中对应位置字符相等的个数。

  • A. 对
  • B. 错

答案:对

203.Python 中字符串对象的encode()方法默认使用utf8作为编码方式。

  • A. 对
  • B. 错

答案:对

204.已知x = 'hellow world.'.encode(),那么表达式x.decode('gbk')的值为'hellow world.'。

  • A. 对
  • B. 错

答案:对

205.已知x = 'Python是一种非常好的编程语言'.encode(),那么表达式x.decode('gbk')的值为'Python是一种非常好的编程语言'。

  • A. 对
  • B. 错

答案:错

206.正则表达式'^http'只能匹配所有以'http'开头的字符串。

  • A. 对
  • B. 错

答案:对

207.正则表达式'^\d{18}|\d{15}$'只能检查给定字符串是否为18位或15位数字字符,并不能保证一定是合法的身份证号。

  • A. 对
  • B. 错

答案:对

208.正则表达式'[^abc]'可以一个匹配任意除'a'、'b'、'c'之外的字符。

  • A. 对
  • B. 错

答案:对

209.正则表达式'python|perl'或'p(ython|erl)'都可以匹配'python'或'perl'。

  • A. 对
  • B. 错

答案:对

210.字节串b'hello world'和b'hello world.'的MD5值相差很小。

  • A. 对
  • B. 错

答案:错

211.无论使用单引号或者双引号包含的字符串,全用print函数输出的结果都一样

  • A. 对
  • B. 错

答案:对

212.无论input函数接受的任何数据,都会以字符串的方式进行保存

  • A. 对
  • B. 错

答案:对

213.Python中单个字符也属于字符串类型

  • A. 对
  • B. 错

答案:对

214.使用下标可以访问字符串中的每一个字符

  • A. 对
  • B. 错

答案:对

215.Python中字符串的下标是从1开始

  • A. 对
  • B. 错

答案:错

216.字符串的切片选取的区间范围是从起始位置开始,到结束位置结束

  • A. 对
  • B. 错

答案:错

217.如果index函数没有在字符串中找到子串,则会返回-1

  • A. 对
  • B. 错

答案:错

218.Python中字符串数据类型是不可变数据类型

  • A. 对
  • B. 错

答案:对

posted @ 2021-10-10 14:05  subeiLY  阅读(7177)  评论(0编辑  收藏  举报