2.1.3-Python基本数据类型.md

问答库

2.1.3 Python基本数据类型(问答库)

  1. 【单选题·易】基本数据类型用于存储单个值。下列哪一项属于 Python 的基本数据类型? A. 列表 B. 字典 C. 布尔值 D. 集合 答案:C 解析: 课程将基本数据类型概括为整型、浮点型、复数、布尔值和字符串。列表、字典、集合属于组合数据类型,用于把若干个值组合成一个数据项。
  2. 【单选题·易】Python 中布尔值仅有两个值,分别用什么表示? A. true 和 false B. True 和 False C. 1 和 0 D. YES 和 NO 答案:B 解析: 课程明确:布尔值仅有两个值,真和假,用 True 和 False 表示。大小写必须与此一致,写成 true/false 不是布尔字面量。
  3. 【多选题·中】根据课程内容,下列关于 Python 变量命名规则的说法正确的是: A. 变量名只能包含字母、数字和下划线 B. 变量名不能以数字开头 C. 变量名区分大小写 D. 变量名可以使用 Python 的保留关键字 答案:ABC 解析: 课程列出的规则是:只能含字母、数字和下划线;不能以数字开头;区分大小写;不能使用保留关键字。D 与最后一条相反。
  4. 【判断题·易】在 Python 中,不但可以改变变量的值,还可以改变它的类型。 答案:√ 解析: 课程实例先执行 a = 4,再执行 a = [2, 5, 7],说明同一变量名既可以改值,也可以改成另一种类型。
  5. 【单选题·中】执行 "Hello, world!".find("world") 和 "Hello, world!".find("你好"),返回值分别是: A. 7 和 0 B. 7 和 -1 C. 6 和 None D. True 和 False 答案:B 解析: find() 返回子字符串首次出现位置的索引;"world" 从下标 7 开始。子串不存在时返回 -1,而不是 0、None 或布尔值。
  6. 【判断题·易】在 Python 中,字符串是不可变的:一旦创建了字符串对象,其内容就无法被修改。 答案:√ 解析: 课程强调字符串不可变,没有增加或删除元素的方法;任何试图修改内容的操作都会生成新的字符串对象。
  7. 【单选题·中】下列哪一种写法可以避免 \t 被识别成转义字符,从而表示合法的 Windows 路径? A. 'D:\test\exer' B. r'D:\test\exer' C. 'D:/t/exer'(不使用盘符后的反斜杠) D. format('D:\test\exer') 答案:B 解析: 课程指出:在字符串前面加上 r 或 R,表示其中字符都不转义。r'D:\test\exer' 因此可表示合法路径。普通字符串中 \t 会被当成制表符。
  8. 【多选题·中】关于字符串的界定符号,下列说法正确的是: A. 一对单引号可以生成单行字符串,如 '广东' B. 一对双引号可以生成单行字符串,如 "广州" C. 一对三单引号或三双引号可以生成多行字符串 D. 三引号只能用来写注释,不能表示字符串 答案:ABC 解析: 课程说明界定符号可以是单引号、双引号、三单引号及三双引号;单/双引号生成单行字符串,三引号可生成多行字符串。三引号也可表示注释,但并非“只能”作注释。
  9. 【判断题·中】执行 list = [3, 4, 5] 之后,再执行 list('abc') 仍然能得到 ['a', 'b', 'c']。 答案:× 解析: 第一个语句把 list 定义成变量,它不再是内置函数。再写 list('abc') 会报 TypeError: 'list' object is not callable。
  10. 【简答题·中】请写出 Python 变量的命名规则,并说明关键字 del 的作用。 答案: ①变量名只能包含字母(a-z 或 A-Z)、数字(0-9)和下划线(_);②不能以数字开头;③区分大小写;④不能使用保留关键字。另外,虽未强制禁止使用内置函数名,但此后不能再使用该内置函数。del 用于删除对象(变量、列表元素、切片或整个列表),删除后该对象从内存中移除,再访问会引发 NameError。 解析: 评分要点:四条强制规则写全;能指出覆盖内置名的后果;能说明 del 删除后不可再访问。漏写“不能用关键字”或把 del 说成只删列表,酌情扣分。
  11. 【简答题·难】请编写一段可直接运行的 Python 程序,完成以下操作并打印结果:(1)用 format() 生成字符串「身高170厘米,年龄28岁」,要求使用位置参数,且年龄对应参数序号 0、身高对应参数序号 1;(2)对 '93,85,90,88' 按逗号分割;(3)用 '+' 把 ['语文', '数学', '英语'] 连接成一个字符串。 答案:
print("身高{1}厘米,年龄{0}岁".format(28, 170))
print('93,85,90,88'.split(','))
print('+'.join(['语文', '数学', '英语']))

运行后输出为:

身高170厘米,年龄28岁
['93', '85', '90', '88']
语文+数学+英语

解析: 评分要点:①代码语法正确、可直接运行;②format 必须用 {1} 对应 170、{0} 对应 28,写成按左右顺序的 "身高{}厘米,年龄{}岁".format(170, 28) 不得满分;③split(',') 得到字符串列表而非整数列表;④join 是用分隔符去调用,写成 ['语文', '数学', '英语'].join('+') 不得分。

  1. 【单选题·难】运行下列程序,输出结果是什么?
print("Pi保留3位小数是: {:.3f}".format(3.141592653))
print("Hello, world!".find("world"))
print("   Hello, World!   ".strip())

A.

Pi保留3位小数是: 3.141
6
Hello, World!

B.

Pi保留3位小数是: 3.142
7
Hello, World!

C.

Pi保留3位小数是: 3.142
7
   Hello, World!

D.

Pi保留3位小数是: 3.142
-1
Hello, World!

答案:B 解析: {:.3f} 将圆周率保留三位小数并四舍五入,得到 3.142 而不是截断后的 3.141。"world" 在 "Hello, world!" 中首次出现的索引是 7。strip() 删除的是开头和结尾的空白,中间空格保留,结果为 'Hello, World!',行首不会留下空格。D 误把 find 当成找不到。

下载此文件