一、考试大纲精要速记

在Python二级考试中,输入输出模块占分值15%-20%,主要考查:
-
input()函数的双层作用(接收输入+类型转换)
-
eval()函数的安全使用场景
-
print()函数的格式化输出控制符
-
三者结合的综合应用题
建议重点掌握以下语法结构:
python
# 输入输出核心代码模板
data = input("提示信息")
result = eval(data)
print(f"最终结果:{result}")
二、input()函数深度解析(含陷阱)

1. 基础用法对比
|
方法 |
代码示例 |
返回类型 |
注意事项 |
|
单行输入 |
name = input() |
str |
自动去除前后空格 |
|
带提示输入 |
age = input("请输入年龄:") |
str |
提示内容不可被程序处理 |
|
多行输入 |
text = input("输入多行\n") |
单行字符串 |
只能接收单行数据 |
2. 类型转换技巧
python
# 错误示范:直接转换会报错
num = int(input("请输入数字:")) # 如果输入字母会崩溃
# 正确写法:添加异常处理
while True:
try:
score = float(input("请输入成绩:"))
break
except ValueError:
print("请输入有效数字!")
3. 经典考题剖析
题目:编写程序,要求用户输入两个整数,计算它们的商并输出结果
陷阱分析:未考虑除数为零的情况,未处理非整数输入
参考答案:
python
a = input("请输入被除数:")
b = input("请输入除数:")
try:
a = int(a)
b = int(b)
print(f"{a}/{b}={a//b}") # 整除运算
except ZeroDivisionError:
print("错误:除数不能为零!")
except ValueError:
print("错误:请输入整数!")
三、eval()函数安全使用指南

1. 两大核心功能
-
表达式计算:eval("3+5 * 2") → 13
-
代码执行:eval("print('Hello')") → 输出Hello
2. 考试限定场景
只允许在以下情况使用:
-
计算数学表达式
-
解析配置文件参数
-
简单的数据验证
3. 实战案例
题目:输入三个数字,输出最大值
高效解法:
python
nums = list(map(eval, input("请输入三个数,用逗号分隔:").split()))
print(max(nums))
四、print()函数进阶技巧

1. 格式化输出7种方式
python
# 方式1:位置参数
print("学号:%05d 姓名:%s" % (1001, "张三"))
# 方式2:关键字参数
print("姓名:{name}, 年龄:{age}".format(name="李四", age=20))
# 方式3:f-string(最推荐)
print(f"当前日期是:{datetime.date.today()}")
# 方式4:对齐控制
print(f"{'Python':>10} 语言")
# 方式5:填充字符
print(f"${100:.2f}") # 输出$100.00
# 方式6:科学计数法
print(f"{1234567:.2e}") # 输出1.23e+06
# 方式7:分割输出
print("=".join(["欢迎","来到","编程世界"]))
2. 高频考点总结
① end参数控制换行:
python
print("第一行", end="\n\n") # 打印两行空行
print("第二行")
# 输出分隔线
print("-" * 40)
② 透明打印:在输出时隐藏代码行
python
print("\n".join([f"第{i}题答案:A" for i in range(1,11)]), file=sys.stdout)
五、综合实战训练

题目1:学生成绩统计器
python
# 输入处理
name = input("请输入学生姓名:")
math = eval(input("请输入数学成绩:"))
english = eval(input("请输入英语成绩:"))
# 计算总分
total = math + english
# 等级判定
if total >= 180:
grade = "优秀"
elif total >= 150:
grade = "良好"
elif total >= 120:
grade = "及格"
else:
grade = "不及格"
# 格式化输出
print(f"\n{name}同学的成绩报告:")
print(f"┌──────────────┬───────┐")
print(f"│ 科目 │ 成绩 │")
print(f"├──────────────┼───────┤")
print(f"│ 数学 │ {math} │")
print(f"│ 英语 │ {english} │")
print(f"├──────────────┼───────┤")
print(f"│ 总分 │ {total} │")
print(f"│ 等级 │ {grade:^6} │")
print(f"└──────────────┴───────┘")
题目2:简易计算器
python
while True:
expr = input("请输入计算表达式(输入q退出):")
if expr == 'q':
break
try:
result = eval(expr)
print(f"计算结果:{result}")
except:
print("非法表达式,请重新输入!")
六、备考冲刺建议
-
真题实战:近三年真题至少刷3遍,重点记录重复出现的input陷阱题
-
错题整理:建立电子错题本,标注错误原因(如类型转换错误、缩进错误)
-
模拟考试:每周进行2次限时训练(建议90分钟/套题)
-
速记技巧: input()返回永远是字符串 eval()前必须确保输入内容安全 f-string优先级高于其他格式化方法
建议配合《Python编程从入门到实践》第5章和《全国计算机等级考试二级教程》P45-P68章节进行系统学习。考前3天重点复习格式化输出的各种写法,确保能快速写出符合要求的代码。
1632

被折叠的 条评论
为什么被折叠?



