内容正文:
举一反三考点练
《Python程序设计》基本数据类型-课后自测
知识点一 字符串型
1.(填空题)在Python中,表示换行的转义字符是 ______,表示一个反斜杠的转义字符是 ______。
2.(填空题)"apple,banana,cherry".split(',') 的执行结果是 ______。
3.(填空题)使用f-string格式化,若变量 name = "Alice",age = 10,则表达式 f"My name is {name} and I am {age} years old." 的结果是 ______。
4.(简答题)请写出将字符串 "hello" 转换为大写形式 "HELLO" 的Python代码。
5.(简答题)字符串拼接操作 s1 = "Py"; s2 = "thon"; s3 = s1 + s2 执行后,s3的值是什么?原字符串s1和s2的值是否发生改变?
知识点二 复数型
1.(填空题)请写出获取复数 c = -5 + 12j 的虚部的代码表达式 __________。
2.(填空题)请写出计算复数 c = 8 + 6j 的共轭复数的代码表达式 __________。
3.(填空题)执行代码 c = complex('3-4j') 后,变量 c 的值是 __________。
4.(简答题)请简述为什么复数不能作为字典的键?
5.(简答题)请写出计算 (2+3j) * (4-5j) 结果的步骤和最终答案。
知识点三 数据类型转换
1.(填空题)用户通过 input() 函数输入年龄 18,要将其用于数学计算(如加法),必须先使用 ______ 函数将其转换为 ______ 类型。
2.(填空题)在Python中,将元组 (1, 2, 3) 转换为列表的代码是 list((1, 2, 3)),那么将列表 [1, 2, 3] 转换为元组的代码是 ______。
3.(填空题)表达式 bool("") 和 bool([]) 的值都是 ______。
4.(简答题)请解释为什么 int("3.14") 会导致程序出错,而 float("3.14") 不会?
5.(简答题)写出以下代码的执行结果:
a = "10"
b = 20
c = a + str(b)
print(c)
原创精品资源学科网独家享有版权,侵权必究!2
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
举一反三考点练
《Python程序设计》基本数据类型-课后自测
知识点一 字符串型
1.(填空题)在Python中,表示换行的转义字符是 ______,表示一个反斜杠的转义字符是 ______。
【答案】
;\\
【解析】
是换行符,\\用于在字符串中表示一个普通的反斜杠字符。
2.(填空题)"apple,banana,cherry".split(',') 的执行结果是 ______。
【答案】['apple', 'banana', 'cherry']
【解析】split(',')方法以逗号为分隔符,将原字符串分割成一个包含三个元素的列表。
3.(填空题)使用f-string格式化,若变量 name = "Alice",age = 10,则表达式 f"My name is {name} and I am {age} years old." 的结果是 ______。
【答案】My name is Alice and I am 10 years old.
【解析】f-string会直接将花括号中的变量值嵌入到字符串中。
4.(简答题)请写出将字符串 "hello" 转换为大写形式 "HELLO" 的Python代码。
【答案】s = "hello".upper() 或 s = "hello"; s = s.upper()
【解析】upper()方法用于将字符串中的所有字母转换为大写。
5.(简答题)字符串拼接操作 s1 = "Py"; s2 = "thon"; s3 = s1 + s2 执行后,s3的值是什么?原字符串s1和s2的值是否发生改变?
【答案】s3的值是 "Python"。原字符串s1和s2的值没有发生改变。
【解析】+操作符会创建一个新的字符串"Python"并赋给s3。由于字符串的不可变性,s1和s2本身的内容保持不变。
知识点二 复数型
1.(填空题)请写出获取复数 c = -5 + 12j 的虚部的代码表达式 __________。
【答案】c.imag
【解析】复数对象的 .imag 属性用于获取其虚部。
2.(填空题)请写出计算复数 c = 8 + 6j 的共轭复数的代码表达式 __________。
【答案】c.conjugate()
【解析】复数对象的 .conjugate() 方法用于返回其共轭复数。
3.(填空题)执行代码 c = complex('3-4j') 后,变量 c 的值是 __________。
【答案】(3-4j)
【解析】complex() 函数可以将一个符合格式的字符串直接转换为复数类型。
4.(简答题)请简述为什么复数不能作为字典的键?
【答案】因为复数是可变(mutable)类型,而字典的键必须是不可哈希(unhashable)的,即不可变类型。
【解析】字典通过键的哈希值来快速定位值。如果一个键在放入字典后其内容发生变化,其哈希值也会改变,导致无法找到该键,破坏了字典的结构。因此,只有不可变类型才能作为键。
5.(简答题)请写出计算 (2+3j) * (4-5j) 结果的步骤和最终答案。
【答案】(23+2j)
【解析】计算步骤如下:
(2+3j) * (4-5j)
= 24 + 2(-5j) + 3j4 + 3j(-5j)
= 8 - 10j + 12j - 15j²
= 8 + 2j - 15*(-1) (因为 j² = -1)
= 8 + 2j + 15
= 23 + 2j
知识点三 数据类型转换
1.(填空题)用户通过 input() 函数输入年龄 18,要将其用于数学计算(如加法),必须先使用 ______ 函数将其转换为 ______ 类型。
【答案】int()、int(或 整数)
【解析】input() 函数返回的值始终是字符串类型。要进行数值运算,必须先用 int() 或 float() 将其转换为数字类型。
2.(填空题)在Python中,将元组 (1, 2, 3) 转换为列表的代码是 list((1, 2, 3)),那么将列表 [1, 2, 3] 转换为元组的代码是 ______。
【答案】tuple([1, 2, 3])
【解析】使用 tuple() 函数可以将一个可迭代对象(如列表)转换为元组。
3.(填空题)表达式 bool("") 和 bool([]) 的值都是 ______。
【答案】False
【解析】在布尔转换中,所有空的容器(如空字符串 ""、空列表 []、空字典 {})都会被转换为 False。
4.(简答题)请解释为什么 int("3.14") 会导致程序出错,而 float("3.14") 不会?
【答案】因为 int() 函数要求转换的字符串必须是纯粹的整数格式,而 "3.14" 包含小数点,不符合整数格式,所以会报错。float() 函数则专门用于处理包含小数点的浮点数字符串,因此可以成功转换。
5.(简答题)写出以下代码的执行结果:
a = "10"
b = 20
c = a + str(b)
print(c)
【答案】1020
【解析】变量 a 是字符串 "10",变量 b 是整数 20。在 a + str(b) 中,str(b) 将整数 20 转换为字符串 "20"。然后,两个字符串进行拼接操作(+),得到结果 "1020"。
原创精品资源学科网独家享有版权,侵权必究!2
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$