宝们。来测试下
以下是专为 Python 初学者设计的 入门级测试题,包含 10 道关键知识点题目,涵盖基础语法、逻辑判断和简单算法,帮助你检验学习成果:
一、基础语法题
1. 变量与类型
题目:执行下列代码后 result 的值是什么?
a = "5"
b = 2
result = a * b
选项:
A) 7
B) "52"
C) "55"
D) 报错
<details> <summary>答案与解析</summary> 正确答案:C) "55" 解析:字符串与整数相乘表示重复字符串,`"5" * 2 = "55"` </details>
2. 列表操作
题目:下面代码的输出是什么?
nums = [1, 2, 3]
nums.append([4, 5])
print(len(nums))
选项:
A) 3
B) 4
C) 5
D) [1,2,3,[4,5]]
<details> <summary>答案与解析</summary> 正确答案:B) 4 解析:`append()` 将整个列表作为单个元素添加,此时 `nums = [1,2,3,[4,5]]`,长度为4 </details>
二、逻辑判断题
3. 条件判断
题目:以下代码的输出是?
x = 15
if x > 10:
print("A")
elif x > 5:
print("B")
else:
print("C")
选项:
A) A
B) B
C) C
D) AB
<details> <summary>答案与解析</summary> 正确答案:A) A 解析:满足第一个条件后不再检查后续条件 </details>
4. 循环基础
题目:下面代码会打印多少个 *?
for i in range(3):
for j in range(2):
print("*", end="")
选项:
A) 3
B) 5
C) 6
D) 无限
<details> <summary>答案与解析</summary> 正确答案:C) 6 解析:外层循环3次,内层循环2次,共打印3×2=6次 </details>
三、函数与数据类型
5. 函数返回值
题目:调用 func(2) 的返回值是?
def func(x):
return x * 2 + 1
选项:
A) 3
B) 4
C) 5
D) 6
<details> <summary>答案与解析</summary> 正确答案:C) 5 解析:2×2+1=5 </details>
6. 字典操作
题目:执行后 data 的值是?
data = {"a": 1, "b": 2}
data["c"] = data.pop("a")
选项:
A) {"a":1, "b":2}
B) {"b":2, "c":1}
C) {"a":1, "b":2, "c":1}
D) 报错
<details> <summary>答案与解析</summary> 正确答案:B) `{"b":2, "c":1}` 解析:`pop("a")` 删除键"a"并返回值1,然后新增键"c" </details>
四、简单算法题
7. 列表推导式
题目:如何用列表推导式生成 [0, 1, 4, 9, 16]?
选项:
A) [x for x in range(5)]
B) [x*2 for x in range(5)]
C) [x**2 for x in range(5)]
D) [x+1 for x in range(4)]
<details> <summary>答案与解析</summary> 正确答案:C) `[x**2 for x in range(5)]` 解析:0^2=0, 1^2=1, 2^2=4, 3^2=9, 4^2=16 </details>
8. 字符串处理
题目:如何获取 "hello" 的前两个字母?
选项:
A) "hello"[0:1]
B) "hello"[:1]
C) "hello"[0:2]
D) "hello".split(2)
<details> <summary>答案与解析</summary> 正确答案:C) `"hello"[0:2]` 解析:切片含头不含尾,索引0-2获取前两个字母 </details>
五、调试与异常
9. 错误处理
题目:以下代码会输出什么?
try:
print(10 / 0)
except ZeroDivisionError:
print("A")
except:
print("B")
else:
print("C")
选项:
A) A
B) B
C) C
D) 报错
<details> <summary>答案与解析</summary> 正确答案:A) A 解析:捕获到除零错误,执行对应except块 </details>
10. 类型错误
题目:下面代码的问题是什么?
age = "25"
print(age + 5)
选项:
A) 缺少引号
B) 类型不匹配
C) 变量未定义
D) 无问题
<details> <summary>答案与解析</summary> 正确答案:B) 类型不匹配 解析:字符串不能直接与整数相加 </details>