Python 3 爬虫、数据清洗与可视化实战(第2版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.5 习题

一、选择题

1.关于Python语言的注释,以下选项中描述错误的是( )。

A.Python语言的单行注释以#号开头

B.Python语言的单行注释以单引号开头

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

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

2.关于Python程序格式框架的描述,以下选项中错误的是( )。

A.Python语言的缩进可以通过按【Tab】键实现

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

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

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

3.Python文件的后缀名是( )。

A..pdf

B..do

C..pass

D..py

4.以下选项中,不是Python对文件的打开模式的是( )。

A.'+'

B.'w'

C.'c'

D.'r'

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

A.【F6】

B.【Ctrl + C】

C.【Ctrl + F6】

D.【Ctrl + Q】

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

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

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

C.全局变量一般没有缩进

D.全局变量在程序执行的全过程中有效

7.以下选项中不符合Python语言变量命名规则的是( )。

A.I

B.3_1

C._AI

D.TempStr

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

A.char

B.int

C.float

D.list

9.关于字符串,下列说法错误的是( )。

A.字符应该视为长度为1的字符串

B.字符串以\0标志字符串的结束

C.既可以用单引号,也可以用双引号创建字符串

D.在三引号字符串中可以包含换行、回车等特殊字符

10.str="Lingyishuju",请问下列哪个选项可以截取出“Lingyi”?( )

A.str[1:6]

B.str[1:7]

C.str[0:5]

D.str[0:6]

11.假如a='abcd' ,若想将a变为'abce',则下列语句正确的是( )。

A.a[3]='e'

B.a[4]='e'

C.a.replace('e','d')

D.a=a[:3]+ 'e'

12.下面哪一个函数可以实现删除列表指定位置的元素?( )

A.append()

B.pop()

C.del()

D.remove()

13.下列哪种不是Python元组的定义方式?( )

A.(1)

B.(1, )

C.(1, 2)

D.(1, 2, (3, 4))

14.长度为100的Python列表、元组和字符串中最后一个元素的下标为( )。

A.-1

B.N

C.100

D.101

15.以下不能创建一个字典的语句是( )。

A.dict1={}

B.dict2={ 3 : 5 }

C.dict3={[1,2,3]: "uestc"}

D.dict4={(1,2,3): "uestc"}

16.以下选项中不能生成一个空字典的是( )。

A.{}

B.dict([])

C.{[]}

D.dict()

17.下面的语句哪个会无限循环下去?( )

img

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

A.每个continue语句只能跳出当前层次的循环

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

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

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

19.若x="foo",y=2,则print(x + y) 的结果为( )。

A.foo

B.foofoo

C.foo2

D.2

E.must be str, not int

20.下面哪项代码会输出1、2、3三个数字?( )

img

21.Python如何定义一个函数?( )

A.class<name>(<type> arg1,<type> arg2,…<type>argN)

B.function <name>(arg1,arg2,…argN)

C.def <name>(arg1,arg2,…argN)

D.def <name>(<type> arg1,<type> arg2,…<type>argN)

22.关于函数,以下选项中描述错误的是( )。

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

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

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

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

23.关于函数的可变参数,可变参数*args传入函数时存储的类型是( )。

A.dict

B.tuple

C.list

D.set

24.下列代码执行的结果是什么?( )

img

A.1

B.2

C.3

D.报错

25.以下哪两种文件打开效果相同?( )

A.open(filename,&apos;r&apos;)

B.open(filename,"w+")

C.open(filename,"rb")

D.open(filename,"w")

26.Python中函数是对象,以下描述正确的是( )。

A.函数可以赋值给一个变量

B.函数不可以作为元素添加到集合对象中

C.函数可以作为参数值传递给其他函数

D.函数可以当作函数的返回值

27.Python中列表切片操作非常方便,若 l=range(100),则以下哪种形式是正确的?( )

A.l[-3]

B.l[-2:13]

C.l[::3]

D.l[2-3]

28.若 a=(1, 2, 3),则下列哪些操作是合法的?( )

A.a[1:-1]

B.a*3

C.a[2]=4

D.list(a)

29.下列关于函数的表述正确的是( )。

A.任何传入参数和自变量必须放在圆括号之间,圆括号之间可以用于定义参数

B.函数的第一行语句可以选择性地使用文档字符串——用于存放函数说明

C.函数内容以逗号起始,并且缩进

D.可以用return结束函数,选择性地返回一个值给调用方

二、判断题

1.Python是一种跨平台、开源、免费的高级动态编程语言。( )

2.Python 3.x完全兼容Python 2.x。( )

3.Python通常是一行写完一条语句,但是若语句很长,则可以通过“\”来实现多行语句。( )

4.如果要在单引号中引用单引号,则需要使用反斜杠(\)转义。( )

5.Python中自带的关键字可以用作变量名。( )

6.Python的变量无须提前声明。( )

7.在Python中可以使用if作为变量名。( )

8.不同数据类型之间是不能进行运算的,但是不同数据类型可以相互转换。( )

9.x=9999**9999这样的语句在Python中无法运行,因为数字太大了,超出了整型变量的表示范围。( )

10.int()的作用是将括号中的数值或文本转换为字符串。( )

11.加法运算符可以用来连接字符串并生成新字符串。( )

12.3+4j 是合法Python数字类型。( )

13.使用Python列表的insert()方法为列表插入元素时会改变列表中插入位置之后元素的索引。( )

14.表达式list(&apos;[1, 2, 3]&apos;) 的值是[1, 2, 3]。( )

15.元组是不可变的,不支持列表对象的insert()、remove()等方法,也不支持使用del命令删除其中的元素,但可以使用del命令删除整个元组对象。( )

16.Python集合中的元素可以是列表。( )

17.列表和元组都可作为字典的“键”。( )

18.元组的访问速度比列表要快一些,如果定义了一系列常量值,并且主要用途仅仅是对其进行遍历而不需要进行任何修改,则建议使用元组而不使用列表。( )

19.创建一个空集合必须用set()函数而不是{ },因为{ }是用来创建一个空字典的。( )

20.删除列表中重复元素最简单的方法是将其转换为集合后再重新转换为列表。( )

21.集合(set)是一个无序、不重复元素序列。( )

22.“==”的作用是赋值。( )

23.带有else子句的循环如果因为执行了break语句而退出,则会执行else子句中的代码。( )

24.函数中必须包含return语句。( )

25.如果仅仅用于控制循环次数,那么使用for i in range(20)和for i in range(20, 40)的作用是等价的。( )

26.int()函数是内建函数,内建函数可以直接调用。( )

三、填空题

1.Python安装扩展库常用的工具是   

2.列表、元组、字符串是Python的   (有序/无序)序列。

3.Python序列类型包括         3种。

4.查看变量类型的Python内置函数是   

5.已知 x=3,那么执行语句 x +=6 之后,x的值为   

6.已知x=3和y=5,那么执行语句 x, y=y, x后x的值是   

7.表达式15//4的值为   

8.表达式 &apos;ab&apos; in &apos;acbed&apos; 的值为。

9.设s="abcdefg",则s[3]值是   ,s[2:4]值是,s[:5]值是。

10.Python语句list(range(1,10,3))的执行结果为。

11.字典对象的方法返回字典的“键”列表。

12.任意长度的Python列表、元组和字符串中第一个元素的下标为。

13.使用 命令既可以删除列表中的一个元素,也可以删除整个列表。

14.在Python中   表示空类型。

15.Python关键字elif表示      两个单词的缩写。

四、实操题

1.循环打印嵌套列表:movies=["the holy",1975,"terry jones",91,["graham", ["michael","john","gilliam","idle","haha"]]],实现以下形式的输出。

The holy

1975

.

.

.

haha

img

2.有值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key的值中,将所有小于66的值保存至字典的第二个key的值中,即{&apos;k1&apos;:大于66的所有值,&apos;k2&apos;:小于66的所有值}。

3.运用条件语句与for循环解决如下问题:现有1、2、3、4 4个数字,能组成多少个互不相同且无重复数字的三位数?分别是多少?

4.编写一个while 循环,提示用户输入其名字。当用户输入其名字后,在屏幕上打印一句问候语,并将一条访问记录添加到文件guest_book.txt中。确保这个文件中的每条记录都独占一行。此外,设置当输入q时停止本程序。

5.用函数实现如下要求。

(1)随机生成20个学生的成绩。

(2)判断这20个学生成绩的等级(A:大于90分小于或等于100分;B:大于80分小于或等于90分;C:80分及以下)。