Python基础知识题库(带答案)

  • 单项选择题

第一章python语法基础

1. Python 3.x 版本的保留字总数是C

A 27                      

B 29                      

C  33                   

D  16

2.以下选项中,不是 Python 语言保留字的是C

A while                  

B pass                   

C  do                   

D  except

3.关于 Python 程序格式框架,以下选项中描述错误的是A

A Python 语言不采用严格的“缩进”来表明程序的格式框架

B Python 单层缩进代码属于之前最邻近的一行非缩进代码,多层缩进代码根据缩进关系决定所属范围

C  Python 语言的缩进可以采用 Tab 键实现

D  判断、循环、函数等语法形式能够通过缩进包含一批 Python 代码,进而表达对应的语义

4. 下列选项中不符合Python语言变量命名规则的是C

A TempStr             

B I                         

C  3_1                  

D  _AI

5.以下选项中,关于Python字符串的描述错误的是D

A Python语言中,字符串是用一对双引号""或者一对单引号 '' 括起来的零个或者多个字符

B 字符串包括两种序号体系:正向递增和反向递减

C  字符串是字符的序列,可以按照单个字符或者字符片段进行索引

D  Python字符串提供区间访问方式,采用[N:M]格式,表示字符串中从N到M的索引子字符串(包含N和M)

6.给出如下代码B

TempStr ="Hello World"

可以输出“World”子串的是

A . print(TempStr[–5:0])                                        

B  print(TempStr[–5:])   

C  print(TempStr[–5: –1])                                    

D  print(TempStr[–4: –1])

7. 关于赋值语句,以下选项中描述错误的是B

A a,b = b,a 可以实现a 和 b值的互换

B a,b,c = b,c,a 是不合法的

C 在Python语言中,“=”表示赋值,即将“=”右侧的计算结果赋值给左侧变量,包含“=”的语句称为赋值语句

D  赋值与二元操作符可以组合,例如&=

8.关于eval函数,以下选项中描述错误的是B

A eval函数的定义为:eval(source, globals=None, locals=None, /)

B 执行“>>> eval("Hello")”和执行“>>> eval("'Hello'")”得到相同的结果

C  eval函数的作用是将输入的字符串转为Python语句,并执行该语句

D  如果用户希望输入一个数字,并用程序对这个数字进行计算,可以采用eval(input(<输入提示字符串>))组合

9.关于Python语言的注释,以下选项中描述错误的是D

A Python语言有两种注释方式:单行注释和多行注释

B Python语言的单行注释以#开头

C  Python语言的多行注释以'''(三个单引号)开头和结尾

D  Python语言的单行注释以单引号 ' 开头

10.关于Python语言的特点,以下选项中描述错误的是B

A Python语言是脚本语言                    

B Python语言是非开源语言

C  Python语言是跨平台语言              

D  Python语言是多模型语言

11.关于import引用,以下选项中描述错误的是A

A 可以使用from turtle import setup 引入turtle库

B 使用import turtle as t引入turtle库,取别名为t

C  使用import turtle引入turtle库

D  import保留字用于导入模块或者模块中的对象

12.下面代码的输出结果是C

print(0.1+0.2==0.3)

A false                   

B True                   

C  False                     

D  true

13.下面代码的输出结果是D

print(round(0.1 + 0.2,1) == 0.3)

A 0                        

B 1                        

C  False                     

D  True

14. 在一行上写多条Python语句使用的符号是C

A 点号                  

B 冒号                  

C  分号                      

D  逗号

15.给出如下代码A

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)

16.给出如下代码

s = 'Python is Open Source!'

print(s[0:].upper())

上述代码的输出结果是 D

A PYTHON                                         

B PYTHON IS OPEN SOURCE

C  Python is Open Source!                       

D  PYTHON IS OPEN SOURCE!

17.以下选项中,符合Python语言变量命名规则的是 A

A Templist             

B !1                    

C  (VR)                      

D  5_1

18.下列选项中可以准确查看Python代码的语言版本(3.5.3)的是 A

A >>> import sys >>> sys.version          

B >>> import sys  >>> sys.exc_info()

C  >>> import sys   >>> sys.path                 

D  >>> import sys >>> sys.version—info          

19.下列选项中可以获取Python整数类型帮助的是 C

A >>> help(float)    

B >>> dir(str)         

C  >>> help(int)          

D  >>> dir(int)

20. 给出如下代码:

>>> x = 3.14

>>> eval('x + 10')

上述代码的输出结果是 C

A TypeError: must be str, not int          

B 系统 错

C  13.14                                             

D  3.1410

21. Python语言的主网站网址是 B

A https://www.python123.org/              

B https://www.python.org/

C  Python123 - 编程更简单              

D  https://pypi.python.org/pypi

22.下列Python保留字中,用于异常处理结构中用来捕获特定类型异常的是B

A def                     

B except                

C  while                      

D  pass

23.关于Python注释,以下选项中描述错误的是A

A Python注释语句不被解释器过滤掉,也不被执行

B 注释可用于标明作者和版权信息

C  注释可以辅助程序调试

D  注释用于解释代码原理或者用途

24.以下选项中,不是Python数据类型的是A

A 实数                  

B 列表                  

C  整数                      

D  字符串

25.下列Python保留字中,不用于表示分支结构的是B

A elif                     

B in                       

C if                        

D else

26.以下选项中,不属于Python保留字的是C

A def                     

B import                

C  type                       

D  elif

27.以下选项中,对程序的描述错误的是A

A 程序是由一系列函数组成的              

B 通过封装可以实现代码复用

C  可以利用函数对程序进行模块化设计    

D  程序是由一系列代码组成的

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

A {.2}                     

B {:.2f}                   

C  {:.2}                       

D  {.2f}

29.以下选项中可用作Python标识符的是C

A 3B9909              

B class                  

C  ____                      

D  it's

30.关于Python赋值语句,以下选项中不合法的是A

A x=(y=1)              

B x,y=y,x               

C  x=y=1              

D  x=1;y=1

31.以下选项中,不是Python语言保留字的是A

A int                      

B del                     

C  try                   

D  None

32.关于Python程序中与“缩进”有关的说法中,以下选项中正确的是C

A 缩进统一为4个空格

B 缩进可以用在任何语句之后,表示语句间的包含关系

C  缩进在程序中长度统一且强制使用

D  缩进是非强制性的,仅为了提高代码可读性

33.以下选项中可访问字符串s从右侧向左第三个字符的是C

A s[3]                    

B s[:-3]                

C  s[-3]                      

D  s[0:-3]

34. Python3.0正式发布的年份是D

A 1990                  

B 2018                  

C  2002                      

D  2008

35.以下选项中,不是IPO模型一部分的是A

A Program             

B Input                  

C  Output             

D  Process

36.以下选项中,不是Python语言合法命名的是A

A 5MyGod             

B MyGod5             

C  _MyGod_        

D  MyGod

37.在Python函数中,用于获取用户输入的是A

A input()                

B print()                 

C  Eval()              

D  get()

38.给标识符关联名字的过程是B

A 赋值语句           

B 命名                  

C  表达                      

D  生成语句

46.以下选项中,不是Python打开方式的是A

A Office                                         

B Windows系统的命令行工具

C  带图形界面的Python Shell-ID LE   

D  命令行版本的Python Shell-Python 3.x

47.查看Python是否安装成功的命令是C

A Win + R              

B PyCharm            

C  python3.4 –v         

D  exit()

48.以下选项中,不是Python IDE的是D

A Py

C harm                                          

B Jupyter Notebook

C  Spyder                                          

D  R studio

49. Python为源文件指定系统默认字符编码的声明是C

A #coding:cp936                               

B #coding:GB2312

C  #coding:utf-8                                        

D  #coding:GBK

50.下面代码的语法错误显示是A

print "Hello World!"

A SyntaxError: Missing parentheses in call to 'print

B

C  NameError: name 'raw_print' is not defined

D  SyntaxError: invalid character in identifier

第二章 基本数据类型

1.关于Python的数字类型,以下选项中描述错误的是

A 复数类型虚部为0时,表示为1+0j

B 1.0是浮点数,不是整数

C  浮点数也有十进制、二进制、八进制和十六进制等表示方式

D  整数类型的数值一定不会出现小数点

2.下面代码的输出结果是

x = 12.34   

print(type(x))

A                                        

B

C                                         

D  

3.下面代码的输出结果是

print(pow(2,10))

A 100                    

B 12                      

C  1024                      

D  20

4.下面代码的输出结果是

x=0b1010

print(x)

A 1024                  

B 10                      

C  16                   

D  256

5.下面代码的输出结果是

x=0o1010

print(x)

A 10                      

B 1024                  

C  520                  

D  2768

6.下面代码的输出结果是

x=0x1010

print(x)

A 4112                  

B 520                    

C  10                   

D  1024

7.关于Python的浮点数类型,以下选项中描述错误的是

A 浮点数类型与数学中实数的概念一致,表示带有小数的数值

B sys.float_info可以详细列出Python解释器所运行系统的浮点数各项参数

C  Python语言的浮点数可以不带小数部分

D  浮点数有两种表示方法:十进制表示和科学计数法

8.关于Python的复数类型,以下选项中描述错误的是

A 复数类型表示数学中的复数

B 对于复数z,可以用z.imagl获得实数部分

C  复数的虚数部分通过后缀“J”或“j”来表示

D  对于复数z,可以用z.real获得实数部分

9.下面代码的输出结果是

z = 12.12 + 34j

print(z.real)

A 34                      

B 34.0                   

C  12.12               

D  12

10.下面代码的输出结果是

z = 12.34 + 34j

print(z.imag)

A 12.12                 

B 34.0                   

C  12                   

D  34

11.下面代码的输出结果是

x=10

y=–1+2j

print(x+y)

A 9+2j            

B 11                      

C  2j                     

D  9

12.下面代码的输出结果是

x=10

y=3

print(x%y,x**y)

A 1 1000               

B 3 30                   

C  3 1000             

D  1 30

13.下面代码的输出结果是

x=10

y=4

print(x/y,x//y)

A 2 2.5                  

B 2.5 2.5               

C  2.5 2                      

D  2 2

14.下面代码的输出结果是

x=10

y=3

print(divmod(x,y))

A 3,1                     

B 3,1             

C  (1,3)            

D  1,3

15.下面代码的输出结果是

x=3.1415926

print(round(x,2) ,round(x))

A 2 2                     

B 6.28 3                

C  3.14 3              

D  3 3.14

16.下面代码的输出结果是

a = 5

b = 6

c = 7

print(pow(b,2) –4*a*c)

A 104                    

B 系统报错           

C  -104                      

D  36

17.关于Python字符串,以下选项中描述错误的是

A 字符串可以保存在变量中,也可以单独存在

B 字符串是一个字符序列,字符串中的编号叫“索引”

C  可以使用datatype()测试字符串的类型

D  输出带有引号的字符串,可以使用转义字符\

18.下面代码的执行结果是

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*********                         

19.下面代码的执行结果是

a = 10.99

print(complex(a))

A 10.99                 

B (10.99+0j)          

C  10.99+0j                

D  0.99

20.下面代码的执行结果是

>>> 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!

21.关于Python字符编码,以下选项中描述错误的是

A ord(x)和chr(x)是一对函数

B Python默认采用Unicode字符编码

C  chr(x)将字符转换为Unicode编码

D  Python可以处理任何字符编码文本

22.给出如下代码 

s = "Alice"

print(s[::–1])

上述代码的输出结果是

A ecilA                  

B ALI

C E           

C  Alice                      

D  Alic

23.给出如下代码

s= "abcdefghijklmn"

print(s[1:10:3])

上述代码的输出结果是

A behk                  

B adgj                   

C  beh                  

D  adg

24.给出如下代码

for i in range(12):

    print(chr(ord("♈")+i),end="")

以下选项描述错误的是

A 输出结果为♈♉♊♋♌♍♎♏♐♑♒♓

B 系统报错

C  chr(x)函数返回Unicode编码对应的字符

D  ord("♈")返回"♈"字符对应的Unicode编码

25.下面代码的输出结果是

>>> hex(255)

A '0eff'                   

B '0off'                   

C  '0xff'                      

D  '0bff'

26.下面代码的输出结果是

>>> oct(–255)

A '0d–377'             

B '0o–377'             

C  '–0d377'                 

D  '–0o377'

27.下面代码的输出结果是

>>> bin(10)

A '0o1010'             

B '0d1010'             

C  '0b1010'                 

D  '0x1010'

28.给出如下代码 以下选项中描述正确的是

for i in range(6):

    print(chr(ord(9801)+i),end="")

A chr ("a")返回"a"字符对应的Unicode编码

B 系统报错

C  输出结果为♈♉♊♋♌♍

D  ord(x)函数返回x的Unicode编码对应的字符

29.给出如下代码:如下描述错误的是

for i in range(10):

    print(chr(ord("!")+i),end="")

A 系统报错

B ord("!")返回"!"字符对应的Unicode编码

C  输出结果为!"#$%&'()*

D  chr(x)函数返回Unicode编码对应的字符

30.下列选项中输出结果是True的是

A >>> isinstance(255,int)

B >>> chr(13).isprintable()

C  >>> "Python".islower()

D  >>> chr(10).isnumeric()

31.下面代码的输出结果是

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.

32.下面代码的输出结果是

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.

33.下面代码的输出结果是

s = "The python language is a cross platform language."

print(s.find('language',30))

A 系统报错           

B 40                      

C  11                   

D  10

34.下面代码的输出结果是

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  系统报错

35.下面代码的输出结果是

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

36.以下选项中,输出结果为False的是

A >>> 5 is 5                    

B >>> False !=0

C  >>> 5 is not 4                  

D  >>> 5 != 4

37.下面代码的输出结果是

>>> True - False

A 1                        

B -1                       

C  True                      

D  0

38.下面代码的输出结果是

a = 2          

b = 2          

c = 2.0

print(a == b, a is b, a is c)

A True False False

B True False True

C  False False True

D  True True False

39.#以下选项中,输出结果为False的是

A >>> 'python' < 'pypi'

B >>> 'AB

C

D ' == 'abcd'.upper()

C  >>> 'python123' > 'python'

D  >>> ''<'a'

40.下面代码的输出结果是

>>> a,b,c,d,e,f = 'Python'

>>> b

A 1                        

B 出错                  

C  ‘y’                    

D  0

41.下面代码的输出结果是

>>> a = b = c =123

>>> print(a,b,c)

A 0 0 123              

B 出错                  

C  1 1 123            

D  123 123 123

42.下面代码的输出结果是

>>> True / False

A True                   

B -1                       

C  0                           

D  系统报错

43.下面代码的输出结果是

x = 1

x *= 3+5**2

print(x)

A 29                      

B 28                      

C  13                   

D  14

44.下面代码的输出结果是

a = 5/3+5//3

print(a)

A 5.4                                                   

B 2.666666666666667

C  3.333333                                             

D  14

45.下面代码的输出结果是

a = "alex"

b = a.capitalize()

print(a,end=",")

print(b)

A alex,ALEX          

B ALEX,alex          

C  alex,Alex         

D  Alex,Alex

46.下面代码的输出结果是

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

47.下面代码的输出结果是

a = "ac"

b = "bd"

c = a + b

print(c)

A dbac                  

B abcd                  

C  acbd                      

D  bdac

48.下面代码的输出结果是

str1 = "mysqlsqlserverPostgresQL"

str2 = "sql"

ncount = str1.count(str2)

print(ncount)

A 2                        

B 5                        

C  4                           

D  3

49.下面代码的输出结果是

>>> True / False

A True                   

B 1                        

C  出错                      

D  False

50.下面代码的输出结果是

str1 = "mysqlsqlserverPostgresQL"

str2 = "sql"

ncount = str1.count(str2,10)

print(ncount)

A 0                        

B 3                        

C  4                           

D  2

第三章 程序的控制结构

1.关于Python的分支结构,以下选项中描述错误的是

A Python中if-elif-else语句描述多分支结构

B 分支结构使用if保留字

C  Python中if-else语句用来形成二分支结构

D  分支结构可以向已经执行过的语句部分跳转

2.关于Python循环结构,以下选项中描述错误的是

A break用来跳出最内层for或者while循环,脱离该循环后程序从循环代码后继续执行

B 每个continue语句只有能力跳出当前层次的循环

C  遍历循环中的遍历结构可以是字符串、文件、组合数据类型和range()函数等

D  Python通过for、while等保留字提供遍历循环和无限循环结构

3.关于Python循环结构,以下选项中描述错误的是

A continue结束整个循环过程,不再判断循环的执行条件

B 遍历循环中的遍历结构可以是字符串、文件、组合数据类型和range()函数等

C  Python通过for、while等保留字构建循环结构

D  continue用来结束当前当次语句,但不跳出当前的循环体

4.下面代码的输出结果是

for s in "HelloWorld":

    if s=="W":

        continue

    print(s,end="")

A Hello  

B HelloWorld 

C  Helloorld  

D  World

5.#下面代码的输出结果是

for s in "HelloWorld":

    if s=="W":

        break

    print(s,end="")

 A HelloWorld 

B Helloorld  

C  World  

D  Hello

6.于程序的异常处理,以下选项中描述错误的是

A 编程语言中的异常和错误是完全相同的概念

B 程序异常发生后经过妥善处理可以继续执行

C  异常语句可以与else和finally保留字配合使用

D  Python通过try、except等保留字提供异常处理功能

7.关于Python遍历循环,以下选项中描述错误的是

A 遍历循环通过for实现

B 无限循环无法实现遍历循环的功能

C  遍历循环可以理解为从遍历结构中逐一提取元素,放在循环变量中,对于所提取的每个元素只执行一次语句块

D  遍历循环中的遍历结构可以是字符串、文件、组合数据类型和range()函数等

8.关于Python的无限循环,以下选项中描述错误的是

A 无限循环一直保持循环操作,直到循环条件不满足才结束

B 无限循环也称为条件循环

C  无限循环通过while保留字构建

D  无限循环需要提前确定循环次数

9.下面代码的输出结果是

for i in "Python":

    print(i,end=" ")

A P,y,t,h,o,n,

B P y t h o n

C  Python 

D  P     y     t      h     o     n

10.给出如下代码:

import random

num = random.randint(1,10)

while True:

    guess = input()

    i = int(guess)

    if i == num:

        print("你猜对了")

        break

    elif i < num:

        print("小了")

    elif i > num:

        print("大了")

以下选项中描述错误的是

A random.randint(1,10) 生成[1,10]之间的整数

B import random”这行代码是可以省略的

C  这段代码实现了简单的猜数字游戏

D  “while True:”创建了一个永远执行的While循环

11.给出如下代码:

a=3

while a > 0:

    a -= 1

    print(a,end=" ")

以下选项中描述错误的是:

A a -= 1 可由 a = a – 1实现

B 条件a > 0 如果修改为a < 0 程序执行会进入死循环

C  使用while 保留字可创建无限循环

D  这段代码的输出内容为2 1 0

12.下列快捷键中能够中断(Interrupt Execution)Python程序运行的是

A F6   

B C trl + Q  

C  C trl + C    

D  C trl + F6

13.给出如下代码:

sum = 0

for i in range(1,11):

    sum += i

    print(sum)

以下选项中描述正确的是:

A 循环内语句块执行了11次

B sum += i 可以写为 sum +  = i

C  如果print(sum) 语句完全左对齐,输出结果不变

D  输出的最后一个数字是55

14.关于break语句与continue语句的说法中,以下选项中不正确的是

A continue语句类似于break语句,也必须在for、while循环中使用

B break语句结束循环,继续执行循环语句的后续语句

C  当多个循环语句嵌套时,break语句只适用于最里层的语句

D  continue语句结束循环,继续执行循环语句的后续语句

15. random.uniform(a,b)的作用是

A 生成一个[a, b]之间的随机整数

B 生成一个(a, b)之间的随机数

C  生成一个均值为a,方差为b的正态分布

D  生成一个[a, b]之间的随机小数

16.实现多路分支的最佳控制结构是

A if   

B try   

C  if-elif-else 

D  if-else

17.给出下面代码:

age=23

start=2

if age%2!=0:

    start=1

for x in range(start,age+2,2):

    print(x)

上述程序输出值的个数是:

A 10   

B 12   

C  16   

D  14

18.下面代码的执行结果是

print(pow(3,0.5)*pow(3,0.5)==3)

A True        

B pow(3,0.5)*pow(3,0.5)==3

C  False       

D  3

19.给出下面代码:

k=10000

while k>1:

    print(k)

    k=k/2

上述程序的运行次数是:

A 14    

B 1000  

C  15   

D  13

20.关于Python语句P=–P,以下选项中描述正确的是

A P的绝对值      

B P赋值为它的负数

C  P=0       

D  P等于它的负数

21.以下选项中能够实现Python循环结构的是

A loop  

B do...for  

C  while   

D  if

22.用来判断当前Python语句在分支结构中的是

A 引号  

B 冒号  

C  大括号  

D  缩进

23.以下选项中描述正确的是

A 条件24<=28<25是合法的,且输出为False

B 条件35<=45<75是合法的,且输出为False

C  条件24<=28<25是不合法的

D  条件24<=28<25是合法的,且输出为True

24.于while保留字,以下选项中描述正确的是

A while True: 构成死循环,程序要禁止使用

B 使用while必须提供循环次数

C  所有while循环功能都可以用for循环替代

D  使用while能够实现循环计数

25.random库中用于生成随机小数的函数是

A randrange() 

B random()  

C  randint() 

D  getrandbits()

26.以下选项中能够最简单地在列表['apple','pear','peach','orange']中随机选取一个元素的是

A sample() 

B random() 

C  choice()  

D  shuffle()

27.Python异常处理中不会用到的关键字是

A finally  

B else  

C  try   

D  if

28.下面代码的输出结果是

for i in range(1,6):

    if i%3 == 0:

        break

    else:

        print(i,end =",")

A 1,2,3,  

B 1,2,3,4,5,6 

C  1,2,    

D  1,2,3,4,5,

29.下面代码的输出结果是

for i in range(1,6):

    if i/3 == 0:

        break

    else:

        print(i,end =",")

A 1,2,3,  

B 1,2,3,4,5,   

C  1,2,3,4,  

D  1,2,

30.下面代码的输出结果是

sum = 0

for i in range(2,101):

    if i % 2 == 0:

       sum += i

    else:

       sum -= i

print(sum)

A -50   

B 51    

C  50   

D  49

31.下面代码的输出结果是

sum=0

for i in range(0,100):

    if i%2==0:

        sum-=i

    else:

        sum+=i

print(sum)

A -50    

B 49   

C  50   

D  -49

32.下面代码的输出结果是

for i in range(1,10,2):

    print(i,end=",")

A 1,4,  

B 1,4,7,

C  1,3,5,7,9,

D  1,3,

33.下面代码的输出结果是

sum = 1

for i in range(1,101):

    sum += i

print(sum)

A 5052  

B 5051  

C  5049  

D  5050

34.下面代码的输出结果是

a = []

for i in range(2,10):

    count = 0

    for x in range(2,i-1):

        if i % x == 0:

            count += 1

    if count != 0:

        a.append(i)

print(a)

A [3 ,5 ,7 ,9] 

B [4, 6, 8, 9]  

C  [4 ,6 ,8 ,9 ,10] 

D  [2 ,3 ,5 ,7]

35.下面代码的输出结果是

x2 = 1

for day in range(4,0,-1):

    x1 = (x2 + 1) * 2

    x2 = x1

print(x1)

A 46

B 23

C  94

D  190

36.下面代码的输出结果是

for num in range(2,10):

    if num > 1:

        for i in range(2,num):

            if (num % i) == 0:

                break

        else:

            print(num,end=’,’)

A 4,6,8,9  

B 2,4,6,8,10 

C  2,4,6,8      

D  2,3,5,7,

37.下面代码的输出结果是

for n in range(100,200):

    i = n // 100

    j = n // 10 % 10

    k = n % 10

    if n == i ** 3 + j ** 3 + k ** 3:

        print(n)

A 159   

B 157   

C  152   

D  153

38.下面代码的输出结果是

a = 2.0

b = 1.0

s = 0

for n in range(1,4):

    s += a / b

    t = a

    a = a + b

    b = t

print(round(s,2))

A 5.17   

B 8.39  

C  3.5   

D  6.77

39.下面代码的输出结果是

for a in ["torch","soap","bath"]:

    print(a)

A torch

soap

bath

B torch,soap,bath

C  torch soap bath

D  torch,soap,bath,

40.下面代码的输出结果是

for a in 'mirror':

    print(a, end="")

    if a == 'r':

        break

A mir      B mirror      

C  mi   

D  mirror

41.下面代码的输出结果是

s = 0

while(s<=1):

    print('计数:',s)

    s = s + 1

A 计数:1  

B 计数:0  

计数:1   

C  计数:0

D  出错

42.下面代码的输出结果是

s = 1

while(s<=1):

    print('计数:',s)

    s = s + 1

A 计数:0        

B 出错

计数:1

C  计数:0       

D  计数:1

43.下面代码的输出结果是

for i in ["pop star"]:

    pass

    print(i,end = "")

A 无输出  

B pop star    

C  出错  

D  popstar

44.给出下面代码:

i = 1

while i < 6:

    j = 0

    while j < i:

        print("*",end='')

        j += 1

    print("\n")

    i += 1

以下选项中描述错误的是:

A 第i行有i个星号*    

B 输出5行

C  执行代码出错           

D  内层循环j用于控制每行打印的*的个数

45.给出下面代码:

for i in range(1,10):

    for j in range(1,i+1):

        print("{}*{}={}\t".format(j,i,i*j),end = '')

    print("")

以下选项中描述错误的是:

A 内层循环i用于控制一共打印 9 列

B 也可使用While嵌套循环实现打印九九乘法表

C  执行代码,输出九九乘法表

D  执行代码出错

46.下面代码的输出结果是

a = 1.0

if isinstance(a,int):

    print("{} is int".format(a))

else:

    print("{} is not int".format(a))

A   出错  

B 1.0 is int  

C  无输出  

D  1.0 is not int    

47.下面代码的输出结果是

a = {}

if isinstance(a,list):

    print("{} is list".format(a))

else:

    print("{} is {}".format("a",type(a)))

A a is list   B 出错  

C  无输出  

D  a is

48.下面代码的输出结果是

a = [1,2,3]

if isinstance(a,float):

    print("{} is float".format(a))

else:

    print("{} is not float".format(a))

A a is float  

B a is  

C  [1, 2, 3] is not float  

D  出错

49.给出下面代码:

a = input("").split(",")

if isinstance(a,list):

    print("{} is list".format(a))

else:

    print("{} is not list".format(a))

代码执行时,从键盘获得1,2,3,则代码的输出结果是:

A 执行代码出错     

B 1,2,3 is not list 

C  ['1', '2', '3'] is list      

D  1,2,3 is list

50. 给出下面代码:

a = input("").split(",")

x = 0

while x < len(a):

    print(a[x],end="")

    x += 1   

代码执行时,从键盘获得a,b,c,d,则代码的输出结果是:

A 执行代码出错

B abcd    

C  无输出   

D  a,b,c,d

第四章 函数和代码复用

1.关于递归函数的描述,以下选项中正确的是

A 函数名称作为返回值

B 包含一个循环结构

C  函数比较复杂

D  函数内部包含对本函数的再次调用

2.关于递归函数基例的说明,以下选项中错误的是

A 递归函数必须有基例

B 递归函数的基例不再进行递归

C  每个递归函数都只能有一个基例

D  递归函数的基例决定递归的深度

3.以下选项中,不属于函数的作用的是

A 提高代码执行速度

B 增强代码可读性

C  降低编程复杂度

D  复用代码

4.假设函数中不包括global保留字,对于改变参数值的方法,以下选项中错误的是

A 参数是列表类型时,改变原参数的值

B 参数是组合类型(可变对象)时,改变原参数的值

C  参数的值是否改变与函数中对变量的操作有关,与参数类型无关

D  参数是整数类型时,不改变原参数的值

5在Python中,关于函数的描述,以下选项中正确的是.

A 函数eval()可以用于数值表达式求值,例如eval("2*3+1")

B Python函数定义中没有对参数指定类型,这说明,参数在函数中可以当作任意类型使用

C  一个函数中只允许有一条return语句

D  Python中,def和return是函数必须使用的保留字

6.给出如下代码:

def func(a,b):

  c=a**2+b

  b=a

  return c

a=10

b=100

c=func(a,b)+a

以下选项中描述错误的是

A 执行该函数后,变量a的值为10

B 执行该函数后,变量b的值为100

C  执行该函数后,变量c的值为200

D  该函数名称为func

7.在Python中,关于全局变量和局部变量,以下选项中描述不正确的是

A 一个程序中的变量包含两类:全局变量和局部变量

B 全局变量不能和局部变量重名

C  全局变量在程序执行的全过程有效

D  全局变量一般没有缩进

8.关于面向对象和面向过程编程描述,以下选项中正确的是

A 面向对象编程比面向过程编程更为高级

B 所有面向对象编程能实现的功能采用面向过程同样能完成

C  面向对象和面向过程是编程语言的分类依据

D  模块化设计就是面向对象的设计

9.以下选项中,对于递归程序的描述错误的是

A 书写简单

B 执行效率高

C  递归程序都可以有非递归编写方法

D  一定要有基例

10.下面代码的输出结果是

>>>f=lambda x,y:y+x

>>>f(10,10)

A 100   

B 10   

C  20    

D  10,10

11.关于形参和实参的描述,以下选项中正确的是

A 参数列表中给出要传入函数内部的参数,这类参数称为形式参数,简称形参

B 程序在调用时,将形参复制给函数的实参

C  函数定义中参数列表里面的参数是实际参数,简称实参

D  程序在调用时,将实参复制给函数的形参

12.关于lambda函数,以下选项中描述错误的是

A lambda不是Python的保留字

B 定义了一种特殊的函数

C  lambda函数也称为匿名函数

D  lambda函数将函数名作为函数结果返回

13以下选项中,对于函数的定义错误的是

A def vfunc(a,b=2):    

B def vfunc(*a,b):

C  def vfunc(a,b):      

D  def vfunc(a,*b):

14.关于函数的参数,以下选项中描述错误的是

A 在定义函数时,如果有些参数存在默认值,可以在定义函数时直接为这些参数指定默认值

B 在定义函数时,可以设计可变数量参数,通过在参数前增加星号(*)实现

C  可选参数可以定义在非可选参数的前面

D  一个元组可以传递给带有星号的可变参数

15.关于return语句,以下选项中描述正确的是

A 函数必须有一个return语句

B 函数中最多只有一个return语句

C  return只能返回一个值

D  函数可以没有return语句

16.关于函数,以下选项中描述错误的是

A 函数是一段具有特定功能的、可重用的语句组

B Python使用del保留字定义一个函数

C  函数能完成特定的功能,对函数的使用不需要了解函数内部实现原理,只要了解函数的输入输出方式即可。

D  使用函数的主要目的是降低编程难度和代码重用

17.关于Python的全局变量和局部变量,以下选项中描述错误的是

A 使用global保留字声明简单数据类型变量后,该变量作为全局变量使用

B 简单数据类型变量无论是否与全局变量重名,仅在函数内部创建和使用,函数退出后变量被释放

C  全局变量指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效

D  局部变量指在函数内部使用的变量,当函数退出时,变量依然存在,下次函数调用可以继续使用

18.关于Python的lambda函数,以下选项中描述错误的是

A f = lambda x,y:x+y 执行后,f的类型为数字类型

B lambda用于定义简单的、能够在一行内表示的函数

C  可以使用lambda函数定义列表的排序原则

D  lambda函数将函数名作为函数结果返回

19.下面代码实现的功能描述为

def fact(n):

    if n==0:

        return 1

    else:

        return n*fact(n-1)

num =eval(input("请输入一个整数:"))

print(fact(abs(int(num))))

A 接受用户输入的整数N,输出N的阶乘值

B 接受用户输入的整数N,判断N是否是素数并输出结论

C  接受用户输入的整数N,判断N是否是水仙花数

D  接受用户输入的整数N,判断N是否是完数并输出结论

20.给出如下代码:

def fact(n):

    s = 1

    for i in range(1,n+1):

        s *= i

    return s

以下选项中描述错误的是

A fact(n)函数功能为求n的阶乘   

B range()函数是Python内置函数

C  s是局部变量       

D  代码中n是可选参数

21.给出如下代码:

ls = ["car","truck"]

def funC (a):

    ls.append(a)

    return

funC ("bus")

print(ls)

以下选项中描述错误的是

A funC (a)中的a为非可选参数   

B ls.append(a) 代码中的ls是全局变量

C  ls.append(a) 代码中的ls是列表类型  

D  执行代码输出结果为['car', 'truck']

22.给出如下代码:

ls = ["car","truck"]

def funC (a):

    ls =[]

    ls.append(a)

    return

funC ("bus")

print(ls)

以下选项中描述错误的是

A 执行代码输出结果为['car', 'truck', 'bus']

B 代码函数定义中,ls.append(a)中的ls是局部变量

C  执行代码输出结果为['car', 'truck']

D  ls.append(a) 代码中的ls是列表类型

23.给出如下代码:

import turtle

def drawLine(draw):

    turtle.pendown() if draw else turtle.penup()

    turtle.fd(50)

    turtle.right(90)

drawLine(True)

drawLine(True)

drawLine(True)

drawLine(True)

以下选项中描述错误的是

A 代码drawLine(True)中True替换为–1,运行代码结果不变

B 代码drawLine(True)True替换为0,运行代码结果不变

C  代码def drawLine(draw)中的draw可取值True或者False

D  运行代码,在Python Turtle Graphics 中,绘制一个正方形

24.给出如下代码:

import turtle

def drawLine(draw):

    turtle.pendown() if draw else turtle.penup()

    turtle.fd(50)

    turtle.right(90)

drawLine(True)

drawLine(0)

drawLine(True)

drawLine(True)

turtle.left(90)

drawLine(0)

drawLine(True)

drawLine(True)

以下选项中描述错误的是:

A 代码drawLine(True)中True替换为–1,运行代码结果不变

B 代码drawLine(True)True替换为0,运行代码结果不变

C  代码def drawLine(draw)中的draw可取数值0、1、–1等

D  运行代码,在Python Turtle Graphics 中,绘制一个数码管数字2

25.下面代码的运行结果是

def func(num):

    num += 1

a =10

func(a)

print(a)

A 11   

B int   

C  10   

D  出错

26.下面代码的输出结果是

def func(a,b):

    return a>>b

s = func(5,2)

print(s)

A 20   

B 1   

C  6   

D  12

27.下面代码的输出结果是

def func(a,b):

    a *= b

    return a

s = func(5,2)

print(s)

A 20   

B 1   

C  12   

D  10

28.下面代码的输出结果是

def f2(a):

    if a > 33:

        return True

li = [11, 22, 33, 44, 55]

res = filter(f2, li)

print(list(res))

A [44,55]     

B [11,33,55] 

C  [22,33,44] 

D  [33,44,55]

29.下面代码的输出结果是

def fib(n):

    a,b = 1,1

    for i in range(n-1):

        a,b = b,a+b

    return a

print (fib(7))

A 5   

B 13    

C  21   

D  8

30.下面代码的输出结果是

def hello_world():

    print('ST',end="*")

def three_hellos():

    for i in range(3):

        hello_world()

three_hellos()

A ST*ST*ST* 

B ST*   

C  ST*ST*  

D  ***

31.下面代码的输出结果是

def exchange(a,b):

    a,b = b,a

    return (a,b)

x = 10

y = 20

x,y = exchange(x,y)

print(x,y)

A 20 10  

B 20 20  

C  20,10  

D  10 10

32.下面代码的输出结果是

MA = lambda x,y :  (x > y) * x + (x < y) * y

MI = lambda x,y :  (x > y) * y + (x < y) * x

a = 10

b = 20

print(MA(a,b))

print(MI(a,b))

A 20

20

B 20

10

C  10

20

D  10

10

33.关于下面的代码,以下选项中描述正确的是

>>> list(range(0,10,2))

A 按可变参数调用     

B 按关键字参数调用

C  执行结果为0, 2, 4, 6, 8    

D  按位置参数调用

34.关于下面代码,以下选项中描述正确的是

def fact(n, m=1) :

    s = 1

    for i in range(1, n+1):

        s *= i

    return s//m

print(fact(m=5,n=10))

A 参数按照名称传递     

B 按位置参数调用

C  执行结果为10886400    

D  按可变参数调用

35.关于函数的返回值,以下选项中描述错误的是

A 函数可以返回0个或多个结果

B 函数必须有返回值

C  函数可以有return,也可以没有

D  return可以传递0个返回值,也可以传递任意多个返回值

36.关于函数局部变量和全局变量的使用规则,以下选项中描述错误的是

A 对于组合数据类型的变量,如果局部变量未真实创建,则是全局变量

B 对于基本数据类型的变量,无论是否重名,局部变量与全局变量不同

C  可以通过global保留字在函数内部声明全局变量

D  return不可以传递任意多个函数局部变量返回值

37.关于函数,以下选项中描述错误的是

A 函数使用时需要了解函数内部实现细节

B 函数主要通过接口(interface)与外界通信,传递信息

C  函数:具有特定功能的可重用代码片段,实现解决某个特定问题的算法

D  函数在需要时被调用,其代码被执行

38.关于函数的目的与意义,以下选项中描述错误的是

A 程序功能抽象,以支持代码重用

B 函数能调用未实现的函数

C  有助于采用分而治之的策略编写大型复杂程序

D  使用时无须了解函数内部实现细节

39.关于函数,以下选项中描述错误的是

A 函数也是数据

B 函数定义语句可执行

C  一条函数定义定义一个用户自定义函数对象

D  函数名称不可赋给其他变量

40.关于函数的参数传递(parameter passing),以下选项中描述错误的是

A 实际参数是函数调用时提供的参数

B 函数调用时,需要将形式参数传递给实际参数

C  Python参数传递时不构造新数据对象,而是让形式参数和实际参数共享同一对象

D  形式参数是函数定义时提供的参数

41.关于函数的关键字参数使用限制,以下选项中描述错误的是

A 关键字参数顺序无限制

B 关键字参数必须位于位置参数之前

C  关键字参数必须位于位置参数之后

D  不得重复提供实际参数

42.下面代码的输出结果是

a = 4

a ^= 3

b = a ^ 2

print(a,end=",")

print(b)

A 4,3   

B 64, 4096  

C  5,7   

D  7,5

43.执行下面代码,错误的是

def f(x, y = 0, z = 0): pass # 空语句,定义空函数体

A f(1, , 3)   

B f(1, 2)  

C  f(1)   

D  f(1, 2, 3)

44.执行下面代码,错误的是

def f(x, y = 0, z = 0): pass # 空语句,定义空函数体

A f(1, z = 3)      

B f(1, x = 1, z = 3)

C  f(1, y = 2, z = 3)     

D  f(z = 3, x = 1, y = 2)

45.执行下面的代码,以下选项中正确的是

def f(x, y = 0, z = 0): pass #  空语句,定义空函数体

A f(x = 1, 2)      

B f(1, y = 2, t = 3)

C  f(1, x = 1, z = 3)     

D  f(x = 1, y = 2, z = 3)

46.关于嵌套函数,以下选项中描述错误的是

A 嵌套函数是在函数内部定义函数

B 内层函数仅供外层函数调用,外层函数之外不得调用

C  def f():

   print("Outer function f")

   def g():

     print("Inner function g")

   g()

 f()

D  def f():

   print("Outer function f")

   def g():

     print("Inner function g")

   g()

 f.g()

47.下面代码的执行结果是

>>> def area(r, pi = 3.14159):

        return pi * r *r

>>> area(pi = 3.14, r = 4)

A 出错   

B 50.24  

C  39.4384  

D  无输出

48.下面代码的执行结果是

>>> def area(r, pi = 3.14159):

        return pi * r * r

>>> area(3.14, 4)

A 出错   

B 39.4384  

C  50.24   

D  无输出

49.下面代码的执行结果是

def greeting(args1, *tupleArgs, **dictArgs):

    print(args1)

    print(tupleArgs)

    print(dictArgs)

names = ['HTY', 'LFF', 'ZH']

info = {'schoolName' : 'NJRU', 'City' : 'Nanjing'}

greeting('Hello,', *names, **info)

A Hello,

('HTY', 'LFF', 'ZH')

{'schoolName': 'NJRU', '

C ity': 'Nanjing'}

B ['HTY', 'LFF', 'ZH']

C  出错

D  无输出

50.下面代码的执行结果是

def greeting(args1, *tupleArgs, **dictArgs):

    print(args1)

    print(tupleArgs)

    print(dictArgs)

names = ['HTY', 'LFF', 'ZH']

info = {'schoolName' : 'NJRU', 'City' : 'Nanjing'}

greeting(*names,'Hello,',**info)

A HTY         

B 出错

('LFF', 'ZH', 'Hello,')

{'schoolName': 'NJRU', '

C ity': 'Nanjing'}

C  无输出       

D  ['HTY', 'LFF', 'ZH']

第五章 组合数据类型

1.字典d={'abc':123, 'def':456, 'ghi':789},len(d)的结果是

A 9    

B 12   

C  3     

D  6

2.关于Python的元组类型,以下选项中描述错误的是

A 元组中元素不可以是不同类型

B 元组一旦创建就不能被修改

C  Python中元组采用逗号和圆括号(可选)来表示

D  一个元组可以作为另一个元组的元素,可以采用多级索引获取信息

3. S和T是两个集合,对S&T的描述正确的是

A S和T的并运算,包括在集合S和T中的所有元素

B S和T的差运算,包括在集合S但不在T中的元素

C  S和T的补运算,包括集合S和T中的非相同元素

D  ST的交运算,包括同时在集合ST中的元素

4. S和T是两个集合,对S|T的描述正确的是

A S和T的差运算,包括在集合S但不在T中的元素

B ST的并运算,包括在集合ST中的所有元素

C  S和T的交运算,包括同时在集合S和T中的元素

D  S和T的补运算,包括集合S和T中的非相同元素

5.以下选项中,不是具体的Python序列类型的是

A 元组类型  

B 字符串类型 

C  数组类型   

D  列表类型

6.对于序列s,能够返回序列s中第i到j以k为步长的元素子序列的表达是

A s[i, j, k]  

B s(i, j, k)  

C  s[i; j; k]  

D  s[i:j:k]

7.设序列s,以下选项中对max(s)的描述正确的是

A 返回序列s的最大元素,如果有多个相同,则返回一个元组类型

B 返回序列s的最大元素,如果有多个相同,则返回一个列表类型

C  返回序列s的最大元素,但要求s中元素之间可比较

D  一定能够返回序列s的最大元素

8.元组变量t=("cat", "dog", "tiger", "human"),t[::–1]的结果是

A {'human', 'tiger', 'dog', 'cat'}  

B ['human', 'tiger', 'dog', 'cat']

C  运行出错       

D  ('human', 'tiger', 'dog', 'cat')

9.以下选项中不能生成一个空字典的是

A dict()   

B {[]}    

C  {}    

D  dict([])

10.给定字典d,以下选项中对d.keys()的描述正确的是

A 返回一个集合类型,包括字典d中所有键

B 返回一种dict_keys类型,包括字典d中所有键

C  返回一个元组类型,包括字典d中所有键

D  返回一个列表类型,包括字典d中所有键

11.给定字典d,以下选项中对d.values()的描述正确的是

A 返回一个集合类型,包括字典d中所有值

B 返回一种dict_values类型,包括字典d中所有值

C  返回一个元组类型,包括字典d中所有值

D  返回一个列表类型,包括字典d中所有值

12.给定字典d,以下选项中对d.items()的描述正确的是

A 返回一个集合类型,每个元素是一个二元元组,包括字典d中所有键值对

B 返回一个列表类型,每个元素是一个二元元组,包括字典d中所有键值对

C  返回一个元组类型,每个元素是一个二元元组,包括字典d中所有键值对

D  返回一种dict_items类型,包括字典d中所有键值对

13.给定字典d,以下选项中对d.get(x, y)的描述正确的是

A 返回字典d中键为y的值,如果不存在,则返回y

B 返回字典d中值为y的值,如果不存在,则返回x

C  返回字典d中键值对为x:y的值

D  返回字典d中键为x的值,如果不存在,则返回y

14.给定字典d,以下选项中对x in d的描述正确的是

A 判断x是否是在字典d中以键或值方式存在

B 判断x是否是字典d中的值

C  x是一个二元元组,判断x是否是字典d中的键值对

D  判断x是否是字典d中的键

15.给定字典d,以下选项中可以清空该字典并保留变量的是

A d.remove() 

B d.clear()   

C  d.pop()  

D  del d

16.关于Python组合数据类型,以下选项中描述错误的是

A *Python组合数据类型能够将多个同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序、更容易

B 序列类型是二维元素向量,元素之间存在先后关系,通过序号访问

C  组合数据类型可以分为3类:序列类型、集合类型和映射类型

D  *Python的str、tuple和list类型都属于序列类型

17.关于Python的元组类型,以下选项中描述错误的是

A 元组一旦创建就不能被修改

B 元组中元素不可以是不同类型

C  一个元组可以作为另一个元组的元素,可以采用多级索引获取信息

D  *Python中元组采用逗号和圆括号(可选)来表示

18.关于Python的列表,以下选项中描述错误的是

A Python列表是一个可以修改数据项的序列类型

B Python列表的长度不可变

C  Python列表用中括号[]表示

D  Python列表是包含0个或者多个对象引用的有序序列

19.关于Python序列类型的通用操作符和函数,以下选项中描述错误的是

A 如果s是一个序列,s =[1,"kate",True]s[3] 返回True

B 如果s是一个序列,x是s的元素,x in s返回True

C  如果s是一个序列,s =[1,"kate",True],s[–1] 返回True

D  如果s是一个序列,x不是s的元素,x not in s返回True

20.下面代码的输出结果是

s =["seashell","gold","pink","brown","purple","tomato"]

print(s[1:4:2])

A ['gold', 'pink', 'brown', 'purple', 'tomato']

B ['gold', 'pink']       

C  ['gold', 'brown']

D  ['gold', 'pink', 'brown']     

21.下面代码的输出结果是

s =["seashell","gold","pink","brown","purple","tomato"]

print(s[4:])

A ['purple', 'tomato']      

B ['seashell', 'gold', 'pink', 'brown']

C  ['purple']        

D  ['gold', 'pink', 'brown', 'purple', 'tomato']

22.下面代码的输出结果是

s =["seashell","gold","pink","brown","purple","tomato"]

print(len(s),min(s),max(s))

A 6 seashell gold       

B 5 pink brown

C  6 brown tomato        

D  5 purple tomato

23.给出如下代码:

s = list("巴老爷有八十八棵芭蕉树,来了八十八个把式要在巴老爷八十八棵芭蕉树下\

住。老爷拔了八十八棵芭蕉树,不让八十八个把式在八十八棵芭蕉树下住。八十八个\

把式烧了八十八棵芭蕉树,巴老爷在八十八棵树边哭。")

以下选项中能输出字符“八”出现次数的是

A print(s.count(""))      

B print(s.index("八"))

C  print(s.index("八"),6,len(s))    

D  print(s.index("八"),6)

24.给出如下代码:

s = list("巴老爷有八十八棵芭蕉树,来了八十八个把式要在巴老爷八十八棵芭蕉树下住。老爷拔了八十八棵芭蕉树,不让八十八个把式在八十八棵芭蕉树下住。八十八个把式烧了八十八棵芭蕉树,巴老爷在八十八棵树边哭。")

以下选项中能输出字符“八”第一次出现的索引位置的是
A print(s.index("八"),6,len(s))    

B print(s.count("八"))

C  print(s.index(""))       

D  print(s.index("八"),6)

25.下面代码的输出结果是

vlist = list(range(5))

print(vlist)

A [0, 1, 2, 3, 4]        

B 0,1,2,3,4,

C  0 1 2 3 4        

D  0;1;2;3;4;

26.下面代码的输出结果是

vlist = list(range(5))

for e in vlist:

    print(e,end=",")

A  0,1,2,3,4,        

B [0, 1, 2, 3, 4]

C  0 1 2 3 4        

D  0;1;2;3;4;

27.关于Python字典,以下选项中描述错误的是

A Python字典是包含0个或多个键值对的集合,没有长度限制,可以根据"键"索引"值"的内容

B 如果想保持一个集合中元素的顺序,可以使用字典类型

C  Python通过字典实现映射

D  字典中对某个键值的修改可以通过中括号[]的访问和赋值实现

28.给出如下代码:

D ictC olor = {"seashell":"海贝色","gold":"金色","pink":"粉红色","brown":"棕色","purple":"紫色","tomato":"西红柿色"}

以下选项中能输出“海贝色”的是
A print(Dict C olor["seashell"])    

B print(D ictC olor.keys())

C  print(D ictC olor.values())    

D  print(D ictC olor["海贝色"])

29.给出如下代码:

import random as ran

listV = []

ran.seed(100)

for i in range(10):

    i = ran.randint(100,999)

    listV.append(i)

以下选项中能输出随机列表元素最大值的是
A print(listV.max())     

B print(listV.reverse(i))

C  print(listV.pop(i))     

D  print(max(listV))

30.给出如下代码:

MonthandFlower={"1月":"梅花","2月":"杏花","3月":"桃花","4月":"牡丹花",\

"5月":"石榴花","6月":"莲花","7月":"玉簪花","8月":"桂花","9月":"菊花",\

"10月":"芙蓉花","11月":"山茶花","12月":"水仙花"}

n = input("请输入1—12的月份:")

print(n + "月份之代表花:" + MonthandFlower.get(str(n)+"月"))

以下选项中描述正确的是
A *MonthandFlower是一个集合   

B *MonthandFlower是一个元组

C  代码实现了从键盘上获取一个整数(112)来表示月份,输出该月份对应的代表花名

D  *MonthandFlower是一个列表

31.下面代码的输出结果是

list1 = []

for i in range(1,11):

    list1.append(i**2)

print(list1)

A [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]  

B [2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

C  错误        

D  ----Python:----A Superlanguage

32.下面代码的输出结果是

list1 = [i*2 for i in 'Python']

print(list1)

A 错误        

B [2, 4, 6, 8, 10, 12]

C  Python Python      

D  ['PP', 'yy', 'tt', 'hh', 'oo', 'nn']

33.下面代码的输出结果是

list1 = [m+n for m in 'AB' for n in 'CD']

print(list1)

A ABC D          

B AABBC C D D

C  ['AC ', 'AD ', 'B ', 'BD ']     

D  错误

34.下面代码的输出结果是

list1 = [(m,n) for m in 'AB' for n in '

C

D ']

print(list1)

A [('A', 'C '), ('A', 'D '), ('B', 'C '), ('B', 'D ')] 

B [‘A’,’B’,’C ’,’D ’]

C  *['AC ', 'AD ', 'BC ', 'BD ']    

D  错误

35.下面代码的输出结果是

list1 = [(m,n) for m in 'AB

C ' for n in 'AB

C ' if m!=n]

print(list1)

A *[('A', 'B'), ('A', 'C '), ('B', 'A'), ('B', 'C '), ('C ', 'A'), ('C ', 'B')]

B *['AC ', 'AD ', 'BC ', 'BD ']

C  错误

D  *[('A', 'C '), ('A', 'D '), ('B', 'C '), ('B', 'D ')]

36.下面代码的输出结果是

d = {'a':1,'b':2,'c':3};

print(d['c'])

A {‘c’:3}   

B 2    

C  3     

D  1

37.下面代码的输出结果是

list1 = [1,2,3]

list2 = [4,5,6]

print(list1+list2)

A [4,5,6]   

B [1, 2, 3, 4, 5, 6] 

C  [1,2,3]   

D  [5,7,9]

38.下面代码的输出结果是

str1="k:1|k1:2|k2:3|k3:4"

str_list=str1.split('|')

d={}

for l in str_list:

    key,value=l.split(':')

    d[key]=value

print(d)

A ['k':'1', 'k1':'2', 'k2':'3','k3':'4']   

B {'k': '1', 'k1': '2', 'k2': '3', 'k3': '4'}

C  {k:1,k1:2,k2:3,k3:4}     

D  [k:1,k1:2,k2:3,k3:4]

39.将以下代码保存成Python文件,运行后输出的是

li = ['alex','eric','rain']

s = "_".join(li)

print(s)

A _alex_eric_rain_      

B _alex_eric_rain

C  alex_eric_rain_      

D  alex_eric_rain

40.下面代码的输出结果是

li = ["hello",'se',[["m","n"],["h","kelly"],'all'],123,446]

print(li[2][1][1])

A h    

B kelly    

C  n    

D  m

41.下面代码的输出结果是

a = []

for i in range(2,10):

    count = 0

    for x in range(2,i-1):

        if i % x == 0:

            count += 1

    if count == 0:

        a.append(i)

print(a)

A [3 ,5 ,7 ,9]  

B [2, 3, 5, 7]   

C  [4, 6 ,8 ,9 ,10] 

D  [2 ,4 ,6 ,8]

42.下面代码的输出结果是

l1=[1,2,3,2]

l2=['aa','bb','cc','dd','ee']

d={}

for index in range(len(l1)):

    d[l1[index]]=l2[index]

print(d)

A {1: 'aa', 2: 'dd', 3: 'cc'}      

B {1: 'aa', 2: 'bb', 3: 'cc',2:'dd'}

C  {1: 'aa', 2: 'bb', 3: 'cc',2:'bb'}   

D  {1: 'aa', 2: 'bb', 3: 'cc'}

43.下面代码的输出结果是

i = ['a','b','c']

l = [1,2,3]

b = dict(zip(i,l))

print(b)

A 报出异常       

B {'a': 1, 'b': 2, 'c': 3}

C  不确定       

D  {1: 'a', 2: 'd', 3: 'c'}

44.下面代码的输出结果是

a = [1, 2, 3]

for i in a[::-1]:

    print(i,end=",")

A 3,1,2   

B 2,1,3   

C  3,2,1,    

D  1,2,3

45.下面代码的输出结果是

L = [1,2,3,4,5]

s1 = ','.join(str(n) for n in L)

print(s1)

A [1,2,3,4,5]  

B 1,,2,,3,,4,,5  

C  [1,,2,,3,,4,,5] 

D  1,2,3,4,5

46.下面代码的输出结果是

a = [9,6,4,5]

N = len(a)

for i in range(int(len(a) / 2)):

    a[i],a[N-i-1] = a[N-i-1],a[i]

print(a)

A [9,6,5,4]  

B [5,4,6,9]  

C  [5,6,9,4]  

D  [9,4,6,5]

47.下面代码的输出结果是

a = [1, 2, 3]

b = a[:]

print(b)

A []    

B [1, 2, 3]   

C  0xF0A9  

D  [3,2,1]

48.下面代码的输出结果是

a = [1,3]

b = [2,4]

a.extend(b)

print(a)

A [1 ,2 ,3 ,4]  

B [1, 3, 2, 4]   

C  [4 ,3 ,2 ,1]  

D  [4 ,2 ,3 ,1]

49.下面代码的输出结果是

>>> s = {}

>>> type(s)

 

B  

C    

D  

50.下面代码的输出结果是

>>> s = set()

>>> type(s)

A   

B   

C   

D       

第六章 文件和数据格式化

1.关于Python对文件的处理,以下选项中描述错误的是

A当文件以文本方式打开时,读写按照字节流方式

B Python能够以文本和二进制两种方式处理文件

C  Python通过解释器内置的open()函数打开一个文件

D  文件使用结束后要用close()方法关闭,释放文件的使用授权

2.以下选项中,不是Python对文件的读操作方法的是

A read   

B readline  

C  readtext  

D  readlines

3.以下选项中,不是Python对文件的打开模式的是

A 'w'                                                

B 'r'    

C  '+'   

D  'c'

4.给出如下代码:

fname = input("请输入要打开的文件: ")

fi = open(fname, "r")

for line in fi.readlines():

    print(line)

fi.close()

以下选项中描述错误的是
A 通过fi.readlines()方法将文件的全部内容读入一个字典fi

B 用户输入文件路径,以文本文件方式读入文件内容并逐行打印

C  通过fi.readlines()方法将文件的全部内容读入一个列表fi

D  上述代码中fi.readlines()可以优化为fi

5.关于数据组织的维度,以下选项中描述错误的是

A 数据组织存在维度,字典类型用于表示一维和二维数据

B 高维数据由键值对类型的数据构成,采用对象方式组织

C  一维数据采用线性方式组织,对应于数学中的数组和集合等概念

D  二维数据采用表格方式组织,对应于数学中的矩阵

6.关于Python文件打开模式的描述,以下选项中错误的是

A 追加写模式a 

B 只读模式r 

C  覆盖写模式w

D  创建写模式n

7.执行如下代码:

fname = input("请输入要写入的文件: ")

fo = open(fname, "w+")

ls = ["清明时节雨纷纷,","路上行人欲断魂,","借问酒家何处有?","牧童遥指杏花村。"]

fo.writelines(ls)

fo.seek(0)

for line in fo:

    print(line)

fo.close()

以下选项中描述错误的是
A *fo.seek(0)这行代码可以省略,不影响输出效果

B *fo.writelines(ls)将元素全为字符串的ls列表写入文件

C  代码主要功能为向文件写入一个列表类型,并打印输出结果

D  执行代码时,从键盘输入“清明.txt”,则清明.txt被创建

8.关于C SV文件的描述,以下选项中错误的是

A *C SV文件的每一行是一维数据,可以使用Python中的列表类型表示

B 整个C SV文件是一个二维数据

C  *C SV文件格式是一种通用的、相对简单的文件格式,应用于程序之间转移表格数据

D  *C SV文件通过多种编码表示字符

9.关于Python文件的 '+' 打开模式,以下选项中描述正确的是

A r/w/a/x一同使用,在原功能基础上增加同时读写功能

B 读模式

C  追加写模式

D  覆盖写模式

10.表格类型数据的组织维度是

A 高维数据  

B 一维数据  

C  多维数据  

D  二维数据

11. “键值对”类型数据的组织维度是

A 高维数据   

B 二维数据  

C  多维数据  

D  一维数据

12.给定列表ls = {1, 2, 3, "1", "2", "3"},其元素包含两种数据类型,则ls的数据组织维度是

A 多维数据  

B 二维数据  

C  高维数据  

D  一维数据

13.给定字典d = {1:"1", 2:"2", 3: "3"},其元素包含两种数据类型,则字典d的数据组织维度是

A 二维数据  

B 多维数据  

C  高维数据  

D  一维数据

14.以下选项中,不是Python中文件操作的相关函数是

A open()  

B read()  

C  load()   

D  write()

15.以下选项中,不是Python中文件操作的相关函数是

A write()  

B open()  

C  readlines() 

D  writeline()

16.以下选项中,不是Python文件处理.seek()方法的参数是

A 0    

B 1    

C  2    

D  -1

17.以下选项中,不是Python文件打开的合法模式组合是

A "r"   

B "a"   

C  "+"   

D  "w"

18.以下选项中,不是Python文件打开的合法模式组合是

A "a+"   

B "t+"   

C  "r+"   

D  "w+"

19.以下选项中,不是Python文件打开的合法模式组合是

A "br+"   

B "wr"    

C  ""    

D  "bw"

20.以下选项中,不是Python文件二进制打开模式的合法组合是

A "b"   

B "x+"    

C  "bx"   

D  "bw"

21.关于一维数据存储格式问题,以下选项中描述错误的是

A 一维数据可以采用CSV格式存储

B 一维数据可以采用直接相连形成字符串方式存储

C  一维数据可以采用分号分隔方式存储

D  一维数据可以采用特殊符号@分隔方式存储

22.关于二维数据CSV存储问题,以下选项中描述错误的是

A CSV文件的每一行表示一个具体的一维数据

B CSV文件的每行采用逗号分隔多个元素

C CSV文件不是存储二维数据的唯一方式

D CSV文件不能包含二维数据的表头信息

23.以下选项中,对CSV格式的描述正确的是

A CSV文件以英文特殊符号分隔元素

B CSV文件以英文逗号分隔元素

C  CSV文件以英文空格分隔元素

D  CSV文件以英文分号分隔元素

24.关于文件关闭的.close()方法,以下选项中描述正确的是

A 文件处理遵循严格的“打开—操作—关闭”模式

B 文件处理后可以不用.close()方法关闭文件,程序退出时会默认关闭

C  文件处理结束之后,一定要用.close()方法关闭文件

D  如果文件是只读方式打开,仅在这种情况下可以不用.close()方法关闭文件

25.表达式",".join(ls)中ls是列表类型,以下选项中对其功能的描述正确的是

A 将逗号字符串增加到列表ls中

B 在列表ls每个元素后增加一个逗号

C  将列表所有元素连接成一个字符串,每个元素后增加一个逗号

D  将列表所有元素连接成一个字符串,元素之间增加一个逗号

26.二维列表ls=[[1,2,3], [4,5,6],[7,8,9]],以下选项中能获取其中元素5的是

A ls[1][1]   

B ls[–2][–1]  

C  ls[4]   

D  ls[–1][–1]

27.二维列表ls=[[1,2,3], [4,5,6],[7,8,9]],以下选项中能获取其中元素9的是

A ls[0][–1]  

B ls[–1]   

C  ls[–1][–1]  

D  ls[–2][–1]

28.二维列表ls=[[1,2,3], [4,5,6],[7,8,9]],以下选项中能获取其中一个维度的数据是

A ls[–1]    

B ls[1][1]  

C  ls[–1][ –1] 

D  ls[–2][–1]

29.列表ls=[1,2,3, 4,5,6,[7,8,9]],以下选项中描述正确的是

A ls可能是一维列表     

B ls可能是高维列表

C  ls可能是二维列表    

D  ls可能是多维列表

30.列表ls=[[1,2,3,4,5,6,7,8,9]],以下选项中描述错误的是

A ls可能是一维列表    

B ls可能是二维列表

C  ls可能是多维列表    

D  ls可能是高维列表

31.以下文件操作方法中,不能从

C SV格式文件中读取数据的是

A readlines  

B readline  

C  seek    

D  read

32.以下文件操作方法中,不能向CSV格式文件写入数据的是

A seek和write 

B writelines  

C  write   

D  writeline

33.两次调用文件的write方法,以下选项中描述正确的是

A 连续写入的数据之间默认采用逗号分隔

B 连续写入的数据之间无分隔符

C  连续写入的数据之间默认采用空格分隔

D  连续写入的数据之间默认采用换行分隔

34.表达式writelines(lines)能够将一个元素是字符串的列表lines写入文件,以下选项中描述正确的是

A 列表lines中各元素之间无分隔符

B 列表lines中各元素之间默认采用逗号分隔

C  列表lines中各元素之间默认采用换行分隔

D  列表lines中各元素之间默认采用空格分隔

35.关于open()函数的文件名,以下选项中描述错误的是

A 文件名不能是一个目录

B 文件名对应的文件可以不存在,打开时不会报错

C  文件名可以是相对路径

D  文件名可以是绝对路径

36. Python语句:f = open(),以下选项中对f的描述错误的是

A 将f当作文件对象,f.read()可以读入文件全部信息

B 表达式print(f)执行将报错

C  *f是一个Python内部变量类型

D  *f是文件句柄,用来在程序中表达文件

37.使用open()打开一个Windows操作系统

D 盘下的文件,以下选项中对路径的表示错误的是

A D :\PythonTest\a.txt     

B D ://PythonTest//a.txt

C  D :\\PythonTest\\a.txt    

D  D :/PythonTest/a.txt

38.关于下面代码中的变量x,以下选项中描述正确的是

fo = open(fname, "r")

for x in fo:

    print(x)

fo.close()

A 变量x表示文件中的一个字符  

B 变量x表示文件中的全体字符

C  变量x表示文件中的一行字符  

D  变量x表示文件中的一组字符

39.当前程序路径在

D :\PythonTest目录中,使用open()打开

D 盘根目录下文件,以下选项中对路径的表示错误的是

A D :\\a.txt  

B D :\a.txt  

C  ../a.txt  

D  ..//a.txt

40以下选项对应的方法可以用于从CSV文件中解析一二维数据的是

A split()    

B format()  

C  exists()  

D  join()

41.以下选项对应的方法可以用于向CSV文件写入一二维数据的是

A split()   

B strip()  

C  exists()  

D  join()

42.以下选项对应的方法可以辅助用于从C SV文件中解析一二维数据的是

A count()  

B strip()   

C  format()  

D  center()

43.关于

C SV文件的扩展名,以下选项中描述正确的是

A 可以为任意扩展名    

B 扩展名只能是.txt

C  扩展名只能是.csv    

D  扩展名只能是.dat

44.关于文件的打开方式,以下选项中描述正确的是

A 文件只能选择二进制或文本方式打开

B 所有文件都可能以文本方式打开

C  文本文件只能以文本方式打开

D  所有文件都可能以二进制方式打开

45.对于特别大的数据文件,以下选项中描述正确的是

A 选择内存大的计算机,一次性读入再进行操作

B *Python可以处理特别大的文件,不用特别关心

C  使用for .. in..循环,分行读入,逐行处理

D  Python无法处理特别大的数据文件

46.关于高维数据,以下选项中描述错误的是

A 高维数据只能表达键值对数据

B “键值对”是高维数据的主要特征

C  高维数据可用于表达一二维数据

D  高维数据用来表达索引和数据之间的关系

47.当打开一个不存在的文件时,以下选项中描述正确的是

A 文件不存在则创建文件

B 一定会报错

C  根据打开类型不同,可能不报错

D  不存在文件无法被打开

48.关于数据维度,以下选项中描述错误的是

A 一维数据可能存在顺序,也可以没有顺序

B 数据维度包括一二维、多维和高维数据

C  所有数据都能用维度方式表示

D  图像由于存在长宽,所以图像数据是二维数据

49.以下选项中不是文件操作函数或方法的是

A load    

B read   

C  writelines  

D  readlines

50.对于无序的一维数据,以下选项中描述错误的是

A 无序一维数据可以采用列表类型来表达

B 无序一维数据可以采用字典类型来表达

C  无序一维数据可以采用集合类型来表达

D  无序一维数据无法利用Python语言有效表达

选择题答案:

Python语法基础

1-5 CCACD  6-10 BBBDB   11-15 ACDCA  16-20 DAACC 21-25 BBAAB

26-30 CABCA  31-35 ACCDA  36-40AABCA 41-45 DADCC 46-50 ACDCA

基本数据类型

1-5 CACBC  6-10 ACBCB  11-15 AACBC  16-20 CCABC  21-25 CACBC   

26-30 DCBAA  31-35 ADBBA 36-40 BADAC 41-45 DDBBC 46-50 DCACA  

程序的控制结构

1-5 DBACD  6-10 ABDBB  11-15 BCDDD 16-20 CBCAB  21-25 CDADB 

26-30 CDCBB  31-35 CCBBA  36-40 DDAAA 41-45 BDBCD 46-50 DDCCB

函数和代码复用

1-5 DCACA  6-10 CBBBC 11-15 DABCD  16-20 BDAAD 21-25 DABBC   

26-30 BDABA  31-35 ABDAB  36-40 DABDB 41-45 BDABD 46-50 DBBAA

组合数据类型

1-5 CADBC 6-10 DCDBB  11-15 BDDDB  16-20 BBBAC  21-25 ACACA  

26-30 ABADC  31-35 ADCAA 36-40 CBBDB 41-45 BABCD   46-50 BBBBD

文件和数据格式化

1-5 ACDAA  6-10  DADAD 11-15 ADCCD  16-20 DCBBB 21-25 BDBBD   

26-30 ACAAD   31-35 CDBAB  36-40 BACBA 41-45 DBADC  46-50 ACDAD

选择题答案:

  • 填空题

第一章 基础知识

  1. Python安装扩展库常用的是_______工具。(pip)
  2. Python标准库math中用来计算平方根的函数是__________。(sqrt)
  3. Python程序文件扩展名主要有__________和________两种,其中后者常用于GUI程序。(py、pyw)
  4. Python源代码程序编译后的文件扩展名为_________。(pyc)
  5. 使用pip工具升级科学计算扩展库numpy的完整命令是_________________。(pip install --upgrade numpy)
  6. 使用pip工具查看当前已安装的Python扩展库的完整命令是_____________。(pip list)
  7. 在IDLE交互模式中浏览上一条语句的快捷键是__________。(Alt+P)
  8. 在Python中__________表示空类型。(None)
  9. 列表、元组、字符串是Python的_________(有序?无序)序列。(有序)
  10. 查看变量类型的Python内置函数是________________。(type())
  11. 查看变量内存地址的Python内置函数是_________________。(id())
  12. 以3为实部4为虚部,Python复数的表达形式为___________或________。(3+4j、3+4J)
  13. Python运算符中用来计算整商的是_________。(//)
  14. Python运算符中用来计算集合并集的是_______。(|)
  15. 使用运算符测试集合包含集合A是否为集合B的真子集的表达式可以写作_______。(A
  16. ______________命令既可以删除列表中的一个元素,也可以删除整个列表。(del)
  17. 表达式 int('123', 16) 的值为_________。(291)
  18. 表达式 int('123', 8) 的值为_________。(83)
  19. 表达式 int('123') 的值为_____________。(123)
  20. 表达式 int('101',2) 的值为__________。(5)
  21. 表达式 abs(-3) 的值为___________。(3)
  22. Python 3.x语句 print(1, 2, 3, sep=':') 的输出结果为____________。(1:2:3)
  23. 表达式 int(4**0.5) 的值为____________。(2)
  24. Python内置函数_________可以返回列表、元组、字典、集合、字符串以及range对象中元素个数。(len())
  25. Python内置函数____________用来返回序列中的最大元素。(max())
  26. Python内置函数____________用来返回序列中的最小元素。(min())
  27. Python内置函数________________用来返回数值型序列中所有元素之和。(sum())
  28. 为了提高Python代码运行速度和进行适当的保密,可以将Python程序文件编译为扩展名__________的文件。(pyc)
  29. 已知 x = 3,那么执行语句  x += 6 之后,x的值为_______________。(9)
  30. 表达式 3 | 5 的值为__________。(7)
  31. 表达式 3 & 6 的值为_________。(2)
  32. 表达式 3 ** 2 的值为_________。(9)
  33. 表达式 3 * 2的值为___________。(6)
  34. 表达式 3<<2 的值为_______________。(12)
  35. 表达式 65 >> 1 的值为_____________。(32)
  36. 表达式 chr(ord('a')^32) 的值为___________。('A')
  37. 表达式 chr(ord('a')-32) 的值为___________。('A')
  38. 表达式 abs(3+4j) 的值为____________。(5.0)
  39. 表达式 callable(int) 的值为___________。(True)
  40. 假设有Python程序文件abc.py,其中只有一条语句print(__name__),那么直接运行该程序时得到的结果为_____________。(__main__)
  41. 表达式16**0.5的值为____________________。(4.0)
  42. 表达式type({3})的值为____________________。(set)
  43. 表达式isinstance('Hello world', str)的值为____________________。(True)

第二章  Python序列

  1. 表达式[1, 2, 3]*3的执行结果为______________________。([1, 2, 3, 1, 2, 3, 1, 2, 3])
  2. list(map(str, [1, 2, 3]))的执行结果为_____________________。([‘1’, ‘2’, ‘3’])
  3. 语句x = 3==3, 5执行结束后,变量x的值为_____________。((True, 5))
  4. 已知 x = 3,并且id(x)的返回值为 496103280,那么执行语句 x += 6 之后,表达式 id(x) == 496103280 的值为___________。(False)
  5. 已知 x = 3,那么执行语句 x *= 6 之后,x的值为________________。(18)
  6. 表达式[3] in [1, 2, 3, 4]的值为________________。(False)
  7. 列表对象的sort()方法用来对列表元素进行原地排序,该函数返回值为     。(None)
  8. 假设列表对象aList的值为[3, 4, 5, 6, 7, 9, 11, 13, 15, 17],那么切片aList[3:7]得到的值是______________________。([6, 7, 9, 11])
  9. 使用列表推导式生成包含10个数字5的列表,语句可以写为_______________。([5 for i in range(10)])
  10. 假设有列表a = ['name', 'age', 'sex']和b = ['Dong', 38, 'Male'],请使用一个语句将这两个列表的内容转换为字典,并且以列表a中的元素为“键”,以列表b中的元素为“值”,这个语句可以写为_____________________。(c = dict(zip(a, b)))
  11. 任意长度的Python列表、元组和字符串中最后一个元素的下标为________。(-1)
  12. Python语句list(range(1,10,3))执行结果为___________________。([1, 4, 7])
  13. 表达式 list(range(5)) 的值为________________。([0, 1, 2, 3, 4])
  14. 已知a = [1, 2, 3]和b = [1, 2, 4],那么id(a[1])==id(b[1])的执行结果为___________。(True)
  15. 切片操作list(range(6))[::2]执行结果为________________。([0, 2, 4])
  16. 使用切片操作在列表对象x的开始处增加一个元素3的代码为_________。(x[0:0] = [3])
  17. 语句sorted([1, 2, 3], reverse=True) == reversed([1, 2, 3])执行结果为_________。(False)
  18. 表达式 sorted([111, 2, 33], key=lambda x: len(str(x))) 的值为________________。([2, 33, 111])
  19. 表达式 sorted([111, 2, 33], key=lambda x: -len(str(x))) 的值为____________。([111, 33, 2])
  20. 语句 x = (3,) 执行后x的值为_______________。((3,))
  21. 语句 x = (3) 执行后x的值为________________。(3)
  22. 已知x=3和y=5,执行语句 x, y = y, x 后x的值是____。(5)
  23. 可以使用内置函数_______________查看包含当前作用域内所有全局变量和值的字典。(globals())
  24. 可以使用内置函数___________________查看包含当前作用域内所有局部变量和值的字典。(locals()()
  25. 字典中多个元素之间使用____________分隔开,每个元素的“键”与“值”之间使用________分隔开。(逗号、冒号)
  26. 字典对象的___________方法可以获取指定“键”对应的“值”,并且可以在指定“键”不存在的时候返回指定值,如果不指定则返回None。(get())
  27. 字典对象的_____________方法返回字典中的“键-值对”列表。(items())
  28. 字典对象的____________方法返回字典的“键”列表。(keys())
  29. 字典对象的______________方法返回字典的“值”列表。(values())
  30. 已知 x = {1:2},那么执行语句 x[2] = 3之后,x的值为________________。({1: 2, 2: 3})
  31. 表达式 {1, 2, 3, 4} - {3, 4, 5, 6}的值为__________________。({1, 2})
  32. 表达式set([1, 1, 2, 3])的值为____________________。({1, 2, 3})
  33. 使用列表推导式得到100以内所有能被13整除的数的代码可以写作___________________________________。([i for i in range(100) if i%13==0])
  34. 已知 x = [3, 5, 7],那么表达式 x[10:]的值为____________。([])
  35. 已知 x = [3, 5, 7],那么执行语句 x[len(x):] = [1, 2]之后,x的值为______________。([3, 5, 7, 1, 2])
  36. 已知 x = [3, 7, 5],那么执行语句 x.sort(reverse=True)之后,x的值为_________________。([7, 5, 3])
  37. 已知 x = [3, 7, 5],那么执行语句 x = x.sort(reverse=True)之后,x的值为_________。(None)
  38. 已知 x = [1, 11, 111],那么执行语句 x.sort(key=lambda x: len(str(x)), reverse=True) 之后,x的值为__________________。([111, 11, 1])
  39. 表达式 list(zip([1,2], [3,4])) 的值为________________________。([(1, 3), (2, 4)])
  40. 已知 x = [1, 2, 3, 2, 3],执行语句 x.pop() 之后,x的值为_____________。([1, 2, 3, 2])
  41. 表达式 list(map(list,zip(*[[1, 2, 3], [4, 5, 6]]))) 的值为________________。([[1, 4], [2, 5], [3, 6]])
  42. 表达式 [x for x in [1,2,3,4,5] if x<3] 的值为_____________________。([1, 2])
  43. 表达式 [index for index, value in enumerate([3,5,7,3,7]) if value == max([3,5,7,3,7])] 的值为__________________。([2, 4])
  44. 已知 x = [3,5,3,7],那么表达式 [x.index(i) for i in x if i==3] 的值为______________。([0, 0])
  45. 已知列表 x = [1, 2],那么表达式 list(enumerate(x)) 的值为_______________。([(0, 1), (1, 2)])
  46. 已知 vec = [[1,2], [3,4]],则表达式 [col for row in vec for col in row] 的值为__________________________。([1, 2, 3, 4])
  47. 已知 vec = [[1,2], [3,4]],则表达式 [[row[i] for row in vec] for i in range(len(vec[0]))] 的值为_________________________。([[1, 3], [2, 4]])
  48. 已知 x = list(range(10)),则表达式 x[-4:] 的值为__________。([6, 7, 8, 9])
  49. 已知 x = [3, 5, 7],那么执行语句 x[1:] = [2]之后,x的值为________________。([3, 2])
  50. 已知 x = [3, 5, 7],那么执行语句 x[:3] = [2]之后,x的值为________________。([ 2])
  51. 已知x为非空列表,那么执行语句y = x[:]之后,id(x[0]) == id(y[0])的值为__________。(True)
  52. 已知 x = [1, 2, 3, 2, 3],执行语句 x.remove(2) 之后,x的值为____________。([1, 3, 2, 3])
  53. 表达式 len([i for i in range(10)]) 的值为__________。(10)
  54. 表达式 len(range(1,10)) 的值为_____________。(9)
  55. 表达式 range(10)[-1] 的值为____________。(9)
  56. 表达式 range(10,20)[4] 的值为__________。(14)
  57. 表达式 round(3.4) 的值为___________。(3)
  58. 表达式 round(3.7) 的值为_________。(4)
  59. 已知 x = (3), 那么表达式 x * 3 的值为__________。(9)
  60. 已知 x = (3,),那么表达式 x * 3 的值为_____________。((3, 3, 3))
  61. 假设列表对象x = [1, 1, 1],那么表达式id(x[0]) == id(x[2])的值为_____________。(True)
  62. 已知列表 x = list(range(10)),那么执行语句 del x[::2]之后,x的值为_________。([1, 3, 5, 7, 9])
  63. 已知列表 x = [1, 2, 3, 4],那么执行语句 del x[1] 之后x的值为____________。([1, 3, 4])
  64. 表达式 [1] * 2 的值为_________________。([1, 1])
  65. 表达式 [1, 2] * 2 的值为______________。([1, 2, 1, 2])
  66. 已知列表 x = [1, 2, 3],那么执行语句 x.insert(1, 4) 只有,x的值为___________。([1, 4, 2, 3])
  67. 已知列表 x = [1, 2, 3],那么执行语句 x.insert(0, 4) 只有,x的值为___________。([4, 1, 2, 3])
  68. 已知列表 x = [1, 2, 3],那么执行语句 x.pop(0) 之后,x的值为_________。([2, 3])
  69. 已知 x = [[1]] * 3,那么执行语句 x[0][0] = 5之后,变量x的值为________________。([[5], [5], [5]])
  70. 表达式 list(map(lambda x: x+5, [1, 2, 3, 4, 5])) 的值为______________________。([6, 7, 8, 9, 10])
  71. 表达式 {1, 2, 3, 4, 5} ^ {4, 5, 6, 7} 的值为_________________________。({1, 2, 3, 6, 7})
  72. 已知 x = [1, 2, 3],那么执行语句 x[len(x)-1:] = [4, 5, 6]之后,变量x的值为_________________________________。([1, 2, 4, 5, 6])
  73. 表达式 len(range(1, 10)) 的值为___________。(9)
  74. 已知x是一个列表对象,那么执行语句 y = x[:] 之后表达式 id(x) == id(y) 的值为___________。(False)
  75. 表达式 sorted([13, 1, 237, 89, 100], key=lambda x: len(str(x))) 的值为___________________________________。([1, 13, 89, 237, 100])
  76. 已知 x = {1:2, 2:3},那么表达式 x.get(3, 4) 的值为____。(4)
  77. 已知 x = {1:2, 2:3},那么表达式 x.get(2, 4) 的值为______。(3)
  78. 表达式 {1, 2, 3} | {3, 4, 5} 的值为_____________________。({1, 2, 3, 4, 5})
  79. 表达式 {1, 2, 3} | {2, 3, 4} 的值为______________________。({1, 2, 3, 4})
  80. 表达式 {1, 2, 3} & {3, 4, 5} 的值为______________。({3})
  81. 表达式 {1, 2, 3} & {2, 3, 4} 的值为___________。({2, 3})
  82. 表达式 {1, 2, 3} - {3, 4, 5} 的值为_________。({1, 2})
  83. 表达式 {1, 2, 3} < {3, 4, 5} 的值为_________。(False)
  84. 表达式 {1, 2, 3} < {1, 2, 4} 的值为___________。(False)
  85. 表达式 [1,2,3].count(4) 的值为_______________。(0)
  86. Python标准库random中的___________方法作用是从序列中随机选择1个元素。(choice())
  87. Python标准库random中的sample(seq, k)方法作用是从序列中选择________(重复?不重复?)的k个元素。(不重复)
  88. random模块中_____________方法的作用是将列表中的元素随机乱序。(shuffle())
  89. 执行代码 x, y, z = sorted([1, 3, 2]) 之后,变量y的值为______。(2)
  90. 表达式 (1, 2, 3)+(4, 5) 的值为__________________。((1, 2, 3, 4, 5))
  91. 表达式 dict(zip([1, 2], [3, 4])) 的值为_________________________________。({1: 3, 2: 4})
  92. 语句 x, y, z = [1, 2, 3] 执行后,变量y的值为__________。(2)
  93. 已知 x = [[1,3,3], [2,3,1]],那么表达式 sorted(x, key=lambda item:item[0]+item[2]) 的值为______________________________________。([[2, 3, 1], [1, 3, 3]])
  94. 已知 x = [[1,3,3], [2,3,1]],那么表达式 sorted(x, key=lambda item:(item[1],item[2])) 的值为____________________________________。([[2, 3, 1], [1, 3, 3]])
  95. 已知 x = [[1,3,3], [2,3,1]],那么表达式 sorted(x, key=lambda item:(item[1], -item[2])) 的值为____________________________________。([[1, 3, 3], [2, 3, 1]])
  96. 已知 x = {1, 2, 3},那么执行语句 x.add(3) 之后,x的值为__________。({1, 2, 3})
  97. 已知 x = {1:1},那么执行语句 x[2] = 2之后,len(x)的值为____________。(2)
  98. 已知 x = {1:1, 2:2},那么执行语句 x[2] = 4之后,len(x)的值为____________。(2)
  99. 假设已从标准库functools导入reduce()函数,那么表达式 reduce(lambda x, y: x-y, [1, 2, 3]) 的值为____。(-4)
  100. 假设已从标准库functools导入reduce()函数,那么表达式 reduce(lambda x, y: x+y, [1, 2, 3]) 的值为____。(6)
  101. 假设已从标准库functools导入reduce()函数,那么表达式reduce(lambda x,y:max(x,y), [1,2,3,4,4,5])的值为_________。(5)
  102. 已知有函数定义 def demo(*p):return sum(p),那么表达式 demo(1, 2, 3) 的值为______、表达式 demo(1, 2, 3, 4) 的值为_________。(6、10)
  103. 已知列表 x = [1, 2],那么连续执行命令 y = x和 y.append(3) 之后,x的值为________。([1, 2, 3])
  104. 已知列表 x = [1, 2],那么连续执行命令 y = x[:] 和 y.append(3) 之后,x的值为________。([1, 2])
  105. 已知列表 x = [1, 2],执行语句 y = x[:] 后,表达式 id(x) == id(y) 的值为_______。(False)
  106. 已知列表 x = [1, 2],执行语句 y = x 后,表达式 id(x) == id(y) 的值为_______。(True)
  107. 已知列表 x = [1, 2],执行语句 y = x 后,表达式 x is y 的值为_______。(True)
  108. 已知列表 x = [1, 2],执行语句 y = x[:] 后,表达式 x is not y 的值为_______。(True)
  109. 表达式 sorted(random.sample(range(5), 5)) 的值为_________________________。([0, 1, 2, 3, 4])
  110. 表达式 [i for i in range(10) if i>8] 的值为________________。([9])
  111. 已知有列表 x = [[1, 2, 3], [4, 5, 6]],那么表达式 [[row[i] for row in x] for i in range(len(x[0]))] 的值为___________________________。([[1, 4], [2, 5], [3, 6]])
  112. 执行语句 x,y,z = map(str, range(3)) 之后,变量y的值为___________。('1')
  113. 已知列表 x = [1, 2],那么执行语句 x.extend([3]) 之后, x的值为____________。([1, 2, 3])
  114. 已知列表 x = [1, 2],那么执行语句 x.append([3]) 之后,x的值为_____________。([1, 2, [3]])
  115. 表达式 print(0b10101) 的值为____________。(21)
  116. 已知 x = [1, 2, 3, 4, 5],那么执行语句 del x[:3] 之后,x的值为__________。([4, 5])
  117. 已知 x = range(1,4) 和 y = range(4,7),那么表达式 sum([i*j for i,j in zip(x,y)]) 的值为__________。(32)
  118. 表达式 [5 for i in range(3)] 的值为_______________。([5, 5, 5])
  119. 表达式 {1, 2, 3} == {1, 3, 2} 的值为___________。(True)
  120. 表达式 [1, 2, 3] == [1, 3, 2] 的值为____________。(False)
  121. 已知 x = [1, 2, 1],那么表达式 id(x[0]) == id(x[2]) 的值为_______________。(True)
  122. 表达式 3 not in [1, 2, 3]的值为__________。(False)
  123. 已知 x = [1, 2],那么执行语句 x[0:0] = [3, 3]之后,x的值为___________。([3, 3, 1, 2])
  124. 已知 x = [1, 2],那么执行语句 x[0:1] = [3, 3]之后,x的值为___________。([3, 3, 2])
  125. 已知 x = [1, 2, 3, 4, 5],那么执行语句 del x[1:3] 之后,x的值为____________。([1, 4, 5])
  126. 已知 x = [[1, 2, 3,], [4, 5, 6]],那么表达式 sum([i*j for i,j in zip(*x)]) 的值为______。(32)
  127. 已知列表 x = [1, 2, 3] 和 y = [4, 5, 6],那么表达式 [(i,j) for i, j in zip(x,y) if i==3] 的值为____________。([(3, 6)])
  128. 已知列表 x = [1.0, 2.0, 3.0],那么表达式 sum(x)/len(x) 的值为___________。(2.0)
  129. 已知 x = {1:2, 2:3, 3:4},那么表达式 sum(x) 的值为___________。(6)
  130. 已知 x = {1:2, 2:3, 3:4},那么表达式 sum(x.values()) 的值为_________。(9)
  131. 已知 x = [3, 2, 3, 3, 4],那么表达式 [index for index, value in enumerate(x) if value==3] 的值为____________。([0, 2, 3])
  132. 表达式 1234%1000//100 的值为___________。(2)
  133. 表达式 3 // 5 的值为_______________。(0)
  134. 表达式 [1, 2] + [3] 的值为__________________。([1, 2, 3])
  135. 表达式 (1,) + (2,) 的值为_____________。((1, 2))
  136. 表达式 (1) + (2) 的值为____________。(3)
  137. 已知 x, y = map(int, ['1', '2']),那么表达式 x + y 的值为_______。(3)
  138. 已知列表 x = list(range(5)),那么执行语句 x.remove(3) 之后,表达式 x.index(4) 的值为________。(3)
  139. 已知列表 x = [1, 3, 2],那么执行语句 x.reverse() 之后,x的值为____________。([2, 3, 1])
  140. 已知列表 x = [1, 3, 2],那么执行语句 x = x.reverse() 之后,x的值为____________。(None)
  141. 已知x为非空列表,那么表达式 x.reverse() == list(reversed(x)) 的值为__________。(False)
  142. 已知x为非空列表,那么表达式 x.sort() == sorted(x) 的值为__________。(False)
  143. 已知列表 x = [1, 3, 2],那么执行语句 y = list(reversed(x)) 之后,x的值为__________。([1, 3, 2])
  144. 已知列表 x = [1, 3, 2],那么执行语句 y = list(reversed(x)) 之后,y的值为__________。([2, 3, 1])
  145. 已知列表x中包含超过5个以上的元素,那么表达式 x == x[:5]+x[5:] 的值为________。(True)
  146. 已知字典 x = {i:str(i+3) for i in range(3)},那么表达式 sum(x) 的值为______。(3)
  147. 已知字典 x = {i:str(i+3) for i in range(3)},那么表达式 sum(item[0] for item in x.items()) 的值为___________。(3)
  148. 已知字典 x = {i:str(i+3) for i in range(3)},那么表达式 ''.join([item[1] for item in x.items()]) 的值为_____________。('345')
  149. 已知列表 x = [1, 3, 2],那么表达式 [value for index, value in enumerate(x) if index==2] 的值为_______________。([2])
  150. 已知列表 x = [1, 3, 2],那么执行语句 a, b, c = sorted(x) 之后,b的值为____。(2)
  151. 已知列表 x = [1, 3, 2],那么执行语句 a, b, c = map(str,sorted(x)) 之后,c的值为______。('3')
  152. 表达式 set([1,2,3]) == {1, 2, 3} 的值为____________。(True)
  153. 表达式 set([1,2, 2,3]) == {1, 2, 3} 的值为____________。(True)
  154. 表达式 '%c'%65 == str(65) 的值为___________。(False)
  155. 表达式 '%s'%65 == str(65) 的值为_____________。(True)
  156. 表达式 chr(ord('b')^32) 的值为_________。('B')
  157. 表达式 'abc' in 'abdcefg' 的值为_____________。(False)
  158. 已知x为整数变量,那么表达式 int(hex(x), 16) == x 的值为_____________。(True)
  159. 已知 x, y = 3, 5,那么执行x, y = y, x 之后,x的值为__________。(5)
  160. 已知 x = 'abcd' 和 y = 'abcde',那么表达式 [i==j for i,j in zip(x,y)] 的值为________________。([True, True, True, True])
  161. 已知x = list(range(20)),那么表达式x[-1]的值为____________________。(19)
  162. 已知x = 3+4j和y = 5+6j,那么表达式x+y的值为____________________。(8+10j)
  163. 已知x = [3],那么执行x += [5]之后x的值为____________________。([3, 5])
  164. 已知x = [3, 3, 4],那么表达式id(x[0])==id(x[1])的值为__________________。(True)
  165. 表达式int('11', 2)的值为______________________。(3)
  166. 表达式int('11', 8)的值为_______________________。(9)
  167. 表达式int(bin(54321), 2)的值为_______________________。(54321)
  168. 表达式chr(ord('A')+1)的值为____________________。('B')
  169. 表达式int(str(34)) == 34的值为___________________。(True)
  170. 表达式list(str([3, 4])) == [3, 4]的值为_________________。(False)
  171. 表达式{1, 2, 3, 4, 5, 6} ^ {5, 6, 7, 8}的值为__________________。({1, 2, 3, 4, 7, 8})
  172. 表达式15 // 4的值为__________________。(3)
  173. 表达式sorted({'a':3, 'b':9, 'c':78})的值为_________________。(['a', 'b', 'c'])
  174. 表达式sorted({'a':3, 'b':9, 'c':78}.values())的值为_____________。([3, 9, 78])
  175. 已知x = [3, 2, 4, 1],那么执行语句x = x.sort()之后,x的值为____________。(None)
  176. 表达式list(filter(lambda x: x>5, range(10)))的值为_________________。([6, 7, 8, 9])
  177. 已知x = list(range(20)),那么语句print(x[100:200])的输出结果为_______________。([])
  178. 已知x = list(range(20)),那么执行语句x[:18] = []后列表x的值为______________。([18, 19])
  179. 已知x = [1, 2, 3],那么连续执行y = x[:]和y.append(4)这两条语句之后,x的值为____________________。([1, 2, 3])
  180. 已知x = [1, 2, 3],那么连续执行y = x和y.append(4)这两条语句之后,x的值为____________________。([1, 2, 3, 4])
  181. 已知x = [1, 2, 3],那么连续执行y = [1, 2, 3]和y.append(4)这两条语句之后,x的值为____________________。([1, 2, 3])
  182. 已知x = [[]] * 3,那么执行语句x[0].append(1)之后,x的值为____________________。([[1], [1], [1]])
  183. 已知x = [[] for i in range(3)],那么执行语句x[0].append(1)之后,x的值为_________________。([[1], [], []])
  184. 已知x = ([1], [2]),那么执行语句x[0].append(3)后x的值为________________。(([1, 3], [2]))
  185. 已知x = {1:1, 2:2},那么执行语句x.update({2:3, 3:3})之后,表达式sorted(x.items())的值为____________________。([(1, 1), (2, 3), (3, 3)])
  186. 已知x = {1:1, 2:2},那么执行语句x[3] = 3之后,表达式sorted(x.items())的值为____________________。([(1, 1), (2, 2), (3, 3)])
  187. 已知x = [1, 2, 3],那么表达式not (set(x*100)-set(x))的值为________________。(True)
  188. 已知x = [1, 2, 3],那么表达式not (set(x*100)&set(x))的值为________________。(False)
  189. 表达式{'x': 1, **{'y': 2}}的值为___________________。({'x': 1, 'y': 2})
  190. 表达式{*range(4), 4, *(5, 6, 7)}的值为__________________。({0, 1, 2, 3, 4, 5, 6, 7})
  191. 已知 x = [1,2,3,4,5],那么执行语句 x[::2] = range(3) 之后,x的值为_______________。([0, 2, 1, 4, 2])
  192. 已知 x = [1,2,3,4,5],那么执行语句 x[::2] = map(lambda y:y!=5,range(3)) 之后,x的值为________________。([True, 2, True, 4, True])
  193. 已知 x = [1,2,3,4,5],那么执行语句 x[1::2] = sorted(x[1::2], reverse=True) 之后,x的值为_________________。([1, 4, 3, 2, 5])
  194. 表达式 True*3 的值为__________。(3)
  195. 表达式 False+1 的值为__________。(1)

第3章  选择结构与循环结构

  1. 表达式 'ab' in 'acbed' 的值为________。(False)
  2. 假设n为整数,那么表达式 n&1 == n%2 的值为_____________。(True)
  3. 关键字__________用于测试一个对象是否是一个可迭代对象的元素。(in)
  4. 表达式 3<5>2 的值为_______________。(True)
  5. 已知 x = {'a':'b', 'c':'d'},那么表达式 'a' in x 的值为______________。(True)
  6. 已知 x = {'a':'b', 'c':'d'},那么表达式 'b' in x 的值为______________。(False)
  7. 已知 x = {'a':'b', 'c':'d'},那么表达式 'b' in x.values() 的值为______________。(True)
  8. 表达式 1<2<3 的值为_________。(True)
  9. 表达式 3 or 5 的值为________。(3)
  10. 表达式 0 or 5 的值为_________。(5)
  11. 表达式 3 and 5 的值为____________。(5)
  12. 表达式 3 and not 5 的值为______________。(False)
  13. Python中用于表示逻辑与、逻辑或、逻辑非运算的关键字分别是_________、___________、_________。(and、or、not)
  14. Python 3.x语句 for i in range(3):print(i, end=',') 的输出结果为_____________________。(0,1,2,)
  15. Python 3.x语句 print(1, 2, 3, sep=',') 的输出结果为________________。(1,2,3)
  16. 对于带有else子句的for循环和while循环,当循环因循环条件不成立而自然结束时________(会?不会?)执行else中的代码。(会)
  17. 在循环语句中,__________语句的作用是提前结束本层循环。(break)
  18. 在循环语句中,_______语句的作用是提前进入下一次循环。(continue)
  19. 表达式  5 if 5>6 else (6 if 3>2 else 5) 的值为_________。(6)
  20. Python关键字elif表示__________和___________两个单词的缩写。(else、if)
  21. 表达式 3 in {1, 2, 3} 的值为_________。(True)
  22. 表达式 'ac' in 'abce' 的值为_____________。(False)
  23. 表达式 not 3 的值为________________。(False)

第4章  字符串与正则表达式

  1. 表达式 'abc' in ('abcdefg') 的值为______________。(True)
  2. 表达式 'abc' in ['abcdefg'] 的值为______________。(False)
  3. 表达式 '\x41' == 'A' 的值为_____________。(True)
  4. Python语句''.join(list('hello world!'))执行的结果是____________________。('hello world!')
  5. 转义字符r’\n’的含义是___________________。(回车换行)
  6. 已知列表对象x = ['11', '2', '3'],则表达式 max(x) 的值为___________。('3')
  7. 表达式 min(['11', '2', '3']) 的值为_________________。('11')
  8. 已知列表对象x = ['11', '2', '3'],则表达式max(x, key=len) 的值为___________。('11')
  9. 已知 path = r'c:\test.html',那么表达式 path[:-4]+'htm' 的值为__________。('c:\\test.htm')
  10. 表达式 list(str([1,2,3])) == [1,2,3] 的值为______________。(False)
  11. 表达式 str([1, 2, 3]) 的值为__________________。('[1, 2, 3]')
  12. 表达式 str((1, 2, 3)) 的值为__________________。('(1, 2, 3)')
  13. 表达式 sum(range(1, 10, 2)) 的值为____________。(25)
  14. 表达式 sum(range(1, 10)) 的值为_____________。(45)
  15. 表达式 '%c'%65 的值为_________。('A')
  16. 表达式 '%s'%65 的值为__________。('65')
  17. 表达式 '%d,%c' % (65, 65) 的值为________。('65,A')
  18. 表达式 'The first:{1}, the second is {0}'.format(65,97) 的值为______________________________。('The first:97, the second is 65')
  19. 表达式 '{0:#d},{0:#x},{0:#o}'.format(65) 的值为_____________。('65,0x41,0o101')
  20. 表达式 isinstance('abcdefg', str) 的值为____________。(True)
  21. 表达式 isinstance('abcdefg', object) 的值为_____________。(True)
  22. 表达式 isinstance(3, object) 的值为_____________。(True)
  23. 表达式 'abcabcabc'.rindex('abc') 的值为____________。(6)
  24. 表达式 ':'.join('abcdefg'.split('cd')) 的值为______________。('ab:efg')
  25. 表达式 'Hello world. I like Python.'.rfind('python') 的值为________。(-1)
  26. 表达式 'abcabcabc'.count('abc') 的值为_____________。(3)
  27. 表达式 'apple.peach,banana,pear'.find('p') 的值为______________。(1)
  28. 表达式 'apple.peach,banana,pear'.find('ppp') 的值为________。(-1)
  29. 表达式 'abcdefg'.split('d') 的值为__________________。(['abc', 'efg'])
  30. 表达式 ':'.join('1,2,3,4,5'.split(',')) 的值为__________________。('1:2:3:4:5')
  31. 表达式 ','.join('a     b  ccc\n\n\nddd     '.split()) 的值为______________。('a,b,ccc,ddd')
  32. 表达式 'Hello world'.upper() 的值为___________。('HELLO WORLD')
  33. 表达式 'Hello world'.lower() 的值为_____________。('hello world')
  34. 表达式 'Hello world'.lower().upper() 的值为___________。('HELLO WORLD')
  35. 表达式 'Hello world'.swapcase().swapcase() 的值为______________。('Hello world')
  36. 表达式 r'c:\windows\notepad.exe'.endswith('.exe') 的值为_____________。(True)
  37. 表达式 r'c:\windows\notepad.exe'.endswith(('.jpg', '.exe')) 的值为_______。(True)
  38. 表达式 'C:\\Windows\\notepad.exe'.startswith('C:') 的值为_________。(True)
  39. 表达式 len('Hello world!'.ljust(20)) 的值为_________。(20)
  40. 表达式 len('abcdefg'.ljust(3)) 的值为_________。(7)
  41. 表达式 'a' + 'b' 的值为_____________。('ab')
  42. 已知 x = '123' 和 y = '456',那么表达式 x + y 的值为______________。('123456')
  43. 表达式 'a'.join('abc'.partition('a')) 的值为________________。('aaabc')
  44. 表达式 re.split('\.+', 'alpha.beta...gamma..delta') 的值为_______________________。(['alpha', 'beta', 'gamma', 'delta'])
  45. 已知 x = 'a234b123c',并且re模块已导入,则表达式 re.split('\d+', x) 的值为_________________。(['a', 'b', 'c'])
  46. 表达式 ''.join('asdssfff'.split('sd')) 的值为____________。('assfff')
  47. 表达式 ''.join(re.split('[sd]','asdssfff')) 的值为_______________。('afff')
  48. 假设re模块已导入,那么表达式 re.findall('(\d)\\1+', '33abcd112') 的值为___________________。(['3', '1'])
  49. 语句 print(re.match('abc', 'defg')) 输出结果为_____________。(None)
  50. 表达式 'Hello world!'[-4] 的值为________________。('r')
  51. 表达式 'Hello world!'[-4:] 的值为________________。('rld!')
  52. 表达式 'test.py'.endswith(('.py', '.pyw')) 的值为__________。(True)
  53. 表达式 len('abc'.ljust(20)) 的值为______________。(20)
  54. 代码 print(re.match('^[a-zA-Z]+$','abcDEFG000')) 的输出结果为_________。(None)
  55. 当在字符串前加上小写字母_____或大写字母_____表示原始字符串,不对其中的任何字符进行转义。(r、R)
  56. 在设计正则表达式时,字符_______紧随任何其他限定符(*、+、?、{n}、{n,}、{n,m})之后时,匹配模式是“非贪心的”,匹配搜索到的、尽可能短的字符串。(?)
  57. 假设正则表达式模块re已导入,那么表达式 re.sub('\d+', '1', 'a12345bbbb67c890d0e') 的值为_____________________。('a1bbbb1c1d1e')
  58. 表达式 len('中国'.encode('utf-8')) 的值为___________。(6)
  59. 表达式 len('中国'.encode('gbk')) 的值为____________。(4)
  60. 表达式 chr(ord('A')+2) 的值为__________。('C')
  61. 表达式 'abcab'.replace('a','yy') 的值为___________。('yybcyyb')
  62. 已知 table = ''.maketrans('abcw', 'xyzc'),那么表达式 'Hellow world'.translate(table) 的值为______________________。('Helloc corld')
  63. 表达式 'hello world, hellow every one'.replace('hello', 'hi') 的值为________________________。('hi world, hiw every one')
  64. 已知字符串 x = 'hello world',那么执行语句 x.replace('hello', 'hi') 之后,x的值为____________。('hello world')
  65. 正则表达式元字符________用来表示该符号前面的字符或子模式1次或多次出现。(+)
  66. 已知 x = 'a   b c     d',那么表达式 ','.join(x.split()) 的值为___________。('a,b,c,d')
  67. 正则表达式元字符________用来表示该符号前面的字符或子模式0次或多次出现。(*)
  68. 表达式 'abcab'.strip('ab') 的值为__________。('c')
  69. 表达式 [str(i) for i in range(3)] 的值为____________。(['0', '1', '2'])
  70. 表达式 'abc.txt'.endswith(('.txt', '.doc', '.jpg')) 的值为___________。(True)
  71. 代码 print(1,2,3,sep=':') 的执行结果为__________________。(1:2:3)
  72. 代码 for i in range(3):print(i, end=',') 的执行结果为_________________。(0,1,2,)
  73. 表达式 eval('''__import__('math').sqrt(9)''') 的值为______________。(3.0)
  74. 表达式 eval('''__import__('math').sqrt(3**2+4**2)''') 的值为_________。(5.0)
  75. 表达式 eval('3+5') 的值为_________________。(8)
  76. 表达式 eval('[1, 2, 3]') 的值为__________________。([1, 2, 3])
  77. 假设math标准库已导入,那么表达式 eval('math.sqrt(4)') 的值为_________。(2.0)
  78. 已知x为非空列表,那么表达式 random.choice(x) in x 的值为___________。(True)
  79. 表达式 'abc10'.isalnum() 的值为______________。(True)
  80. 表达式 'abc10'.isalpha() 的值为________________。(False)
  81. 表达式 'abc10'.isdigit() 的值为__________________。(False)
  82. 表达式 'C:\\windows\\notepad.exe'.endswith('.exe') 的值为________。(True)
  83. 表达式 '%s'%[1,2,3] 的值为_____________。('[1, 2, 3]')
  84. 表达式 'aaasdf'.lstrip('as') 的值为________________。('df')
  85. 表达式 'aaasdf'.lstrip('af') 的值为________________。('sdf')
  86. 表达式 'aaasdf'.strip('af') 的值为______________。('sd')
  87. 表达式 'aaasdf'.rstrip('af') 的值为_______________。('aaasd')
  88. 表达式 len('SDIBT') 的值为__________。(5)
  89. 表达式 'Hello world!'.count('l') 的值为___________。(3)
  90. 已知 x = 'abcdefg',则表达式 x[3:] + x[:3] 的值为___________________。('defgabc')
  91. 字符串编码格式UTF8使用____________________个字节表示一个汉字。(3)
  92. 字符串编码格式GBK使用__________________个字节表示一个汉字。(2)
  93. 已知字符串编码格式utf8使用3个字节表示一个汉字、1个字节表示英语字母,那么表达式len('abc你好')的值为_______________。(5)
  94. 已知字符串编码格式utf8使用3个字节表示一个汉字、1个字节表示英语字母,那么表达式len('abc你好'.encode())的值为_______________。(9)
  95. 已知字符串编码格式gbk使用2个字节表示一个汉字、1个字节表示英语字母,那么表达式len('abc你好'.encode('gbk'))的值为_______________。(7)
  96. 已知ord('A')的值为65并且hex(65)的值为'0x41',那么表达式'\x41b'的值为________________。('Ab')
  97. 已知formatter = 'good {0}'.format,那么表达式list(map(formatter, ['morning']))的值为__________________。(['good morning'])
  98. 已知x = 'hello world.',那么表达式x.find('x')和x.rfind('x')的值都为_____________。(-1)
  99. 表达式':'.join('hello world.'.split())的值为___________________。('hello:world.')
  100. 表达式':'.join('a b c d'.split(maxsplit=2))的值为_________________。('a:b:c d')
  101. 已知x = 'hello world',那么表达式x.replace('l', 'g')的值为_______________。('heggo worgd')
  102. 假设已成功导入Python标准库string,那么表达式len(string.digits)的值为_______________。(10)
  103. 表达式'aaaassddf'.strip('af')的值为__________________。('ssdd')
  104. 表达式len('aaaassddf'.strip('afds'))的值为________________。(0)
  105. 表达式len('hello world'[100:])的值为__________________。(0)
  106. 表达式chr(ord('a')^32^32)的值为_________________。('a')
  107. 表达式chr(ord('a')^32)的值为_________________。('A')
  108. 已知x = 'aa b ccc dddd',那么表达式''.join([v for i,v in enumerate(x[:-1]) if v==x[i+1]])的值为_________________。('accddd')
  109. 假设正则表达式模块re已正确导入,那么表达式''.join(re.findall('\d+', 'abcd1234'))的值为_____________________。('1234')
  110. 假设正则表达式模块re已正确导入,那么表达式re.findall('\d+?', 'abcd1234')的值为_____________________。(['1', '2', '3', '4'])
  111. 假设正则表达式模块re已正确导入,那么表达式re.sub('(.\s)\\1+', '\\1','a a a a a bb')的值为________________________。('a bb')
  112. 表达式 eval('*'.join(map(str, range(1, 6)))) 的值为_________。(120)
  113. 正则表达式模块re的__________方法用来编译正则表达式对象。(compile())
  114. 正则表达式模块re的______________方法用来在字符串开始处进行指定模式的匹配。(match())
  115. 正则表达式模块re的______________方法用来在整个字符串中进行指定模式的匹配。(search())
  116. 表达式 re.search(r'\w*?(?P\b\w+\b)\s+(?P=f)\w*?', 'Beautiful is is better than ugly.').group(0) 的值为___________。('is is')
  117. 表达式 'Beautiful is better than ugly.'.startswith('Be', 5) 的值为_________。(False)
  118. 已知字典 x = {i:str(i+3) for i in range(3)},那么表达式 ''.join(x.values()) 的值为____________。('345')

第5章  函数定义与使用

  1. Python中定义函数的关键字是_________________。(def)
  2. 在函数内部可以通过关键字________________来定义全局变量。(global)
  3. 如果函数中没有return语句或者return语句不带任何返回值,那么该函数的返回值为_________________。(None)
  4. 表达式 sum(range(10)) 的值为________________。(45)
  5. 表达式 sum(range(1, 10, 2)) 的值为____________。(25)
  6. 表达式 list(filter(None, [0,1,2,3,0,0])) 的值为___________________。([1, 2, 3])
  7. 表达式 list(filter(lambda x:x>2, [0,1,2,3,0,0])) 的值为_________。([3])
  8. 表达式 list(range(50, 60, 3)) 的值为_______________________。([50, 53, 56, 59])
  9. 表达式 list(filter(lambda x: x%2==0, range(10))) 的值为__________________________。([0, 2, 4, 6, 8])
  10. 表达式 list(filter(lambda x: len(x)>3, ['a', 'b', 'abcd'])) 的值为___________。(['abcd'])
  11. 已知 g = lambda x, y=3, z=5: x*y*z,则语句 print(g(1)) 的输出结果为_______。(15)
  12. 表达式 list(map(lambda x: len(x), ['a', 'bb', 'ccc'])) 的值为__________。([1, 2, 3])
  13. 已知 f = lambda x: x+5,那么表达式 f(3) 的值为________。(8)
  14. 表达式 sorted(['abc', 'acd', 'ade'], key=lambda x:(x[0],x[2])) 的值为_____________。(['abc', 'acd', 'ade'])
  15. 已知函数定义def demo(x, y, op):return eval(str(x)+op+str(y)),那么表达式demo(3, 5, '+')的值为______________________。(8)
  16. 已知函数定义def demo(x, y, op):return eval(str(x)+op+str(y)),那么表达式demo(3, 5, '*')的值为______________________。(15)
  17. 已知函数定义def demo(x, y, op):return eval(str(x)+op+str(y)),那么表达式demo(3, 5, '-')的值为______________________。(-2)
  18. 已知f = lambda n: len(bin(n)[bin(n).rfind('1')+1:]),那么表达式f(6)的值为____________________。(1)
  19. 已知f = lambda n: len(bin(n)[bin(n).rfind('1')+1:]),那么表达式f(7)的值为____________________。(0)
  20. 已知 g = lambda x, y=3, z=5: x+y+z,那么表达式 g(2) 的值为________。(10)
  21. 已知函数定义 def func(*p):return sum(p),那么表达式 func(1,2,3) 的值为______。(6)
  22. 已知函数定义 def func(*p):return sum(p),那么表达式 func(1,2,3, 4) 的值为______。(10)
  23. 已知函数定义 def func(**p):return sum(p.values()),那么表达式 func(x=1, y=2, z=3) 的值为________。(6)
  24. 已知函数定义 def func(**p):return ''.join(sorted(p)),那么表达式  func(x=1, y=2, z=3)的值为__________。('xyz')
  25. 已知 f = lambda x: 5,那么表达式 f(3)的值为_____________。(5)

第6章  面向对象程序设计

  1. Python使用_________________关键字来定义类。(class)
  2. 表达式 isinstance('abc', str) 的值为________________。(True)
  3. 表达式 isinstance('abc', int) 的值为_______________。(False)
  4. 表达式 isinstance(4j, (int, float, complex)) 的值为_____________。(True)
  5. 表达式 isinstance('4', (int, float, complex)) 的值为_____________。(False)
  6. 表达式 type(3) in (int, float, complex) 的值为____________。(True)
  7. 表达式 type(3.0) in (int, float, complex) 的值为____________。(True)
  8. 表达式 type(3+4j) in (int, float, complex) 的值为____________。(True)
  9. 表达式 type('3') in (int, float, complex) 的值为____________。(False)
  10. 表达式 type(3) == int 的值为__________。(True)
  11. 在Python定义类时,与运算符“**”对应的特殊方法名为 _____________。(__pow__())
  12. 在Python中定义类时,与运算符“//”对应的特殊方法名为_______________。(__floordiv__())
  13. 表达式type({}) == dict的值为_________________。(True)
  14. 表达式type({}) == set的值为_______________。(False)
  15. 在Python中,不论类的名字是什么,构造方法的名字都是________________。(__init__)
  16. 如果在设计一个类时实现了__contains__ ()方法,那么该类的对象会自动支持_____________运算符。(in)

第7章  文件操作

  1. 对文件进行写入操作之后,_______________方法用来在不关闭文件对象的情况下将缓冲区内容写入文件。(flush())
  2. Python内置函数_____________用来打开或创建文件并返回文件对象。(open())
  3. 使用上下文管理关键字______________可以自动管理文件对象,不论何种原因结束该关键字中的语句块,都能保证文件被正确关闭。(with)
  4. Python标准库os中用来列出指定文件夹中的文件和子文件夹列表的方式是____________。(listdir())
  5. Python标准库os.path中用来判断指定文件是否存在的方法是______________。(exists())
  6. Python标准库os.path中用来判断指定路径是否为文件的方法是_______________。(isfile())
  7. Python标准库os.path中用来判断指定路径是否为文件夹的方法是______________。(isdir())
  8. Python标准库os.path中用来分割指定路径中的文件扩展名的方法是__________。(splitext())
  9. Python扩展库_____________支持Excel 2007或更高版本文件的读写操作。(openpyxl)
  10. Python标准库____________中提供了计算MD5摘要的方法md5()。(hashlib)
  11. 已知当前文件夹中有纯英文文本文件readme.txt,请填空完成功能把readme.txt文件中的所有内容复制到dst.txt中,with open('readme.txt') as src, open('dst.txt', ____________) as dst:dst.write(src.read())。('w')

你可能感兴趣的:(python,python)