Python 入门第三课:让程序"开口说话":90% 新手都忽略的输入输出技巧

!tip\] 📝 课程目标:掌握 Python 的输入输出功能,让你的程序能和用户"对话"

一、输出信息:print() 函数

1.1 基础用法

Python 复制代码
print("Hello, Python!")

1.2 打印多个内容

Python 复制代码
# 用逗号分隔,自动添加空格
print("姓名:", "张三", "年龄:", 25)

# 输出结果:姓名:张三 年龄:25

1.3 自定义分隔符

Python 复制代码
# 使用 sep 参数改变分隔符
print("2024", "03", "27", sep="-")
# 输出:2024-03-27

print("A", "B", "C", sep="|")
# 输出:A|B|C

1.4 控制换行

Python 复制代码
# end 参数控制结尾(默认是换行符\n)
print("第一行", end=" ")
print("第二行")
# 输出:第一行 第二行

print("你好", end="!\n")
print("明天见")
# 输出:你好!
#       明天见

二、获取输入:input() 函数

2.1 基础输入

Python 复制代码
name = input("请输入你的名字:")
print(f"你好,{name}!")

2.2 输入的都是字符串

Python 复制代码
age = input("请输入你的年龄:")
print(type(age))  # <class 'str'>

# 需要转换成数字
age_num = int(age)
print(f"明年你就 {age_num + 1} 岁了")

2.3 不同类型转换

Python 复制代码
# 转整数
num1 = int(input("请输入一个整数:"))

# 转浮点数
num2 = float(input("请输入一个小数:"))

# 转布尔值(注意:非空字符串都是 True)
flag = bool(input("请输入任意内容:"))

三、实战练习

练习 1:个人信息卡片

Python 复制代码
print("=== 个人信息生成器 ===")
name = input("姓名:")
age = input("年龄:")
city = input("城市:")
hobby = input("爱好:")

print("\n" + "="*30)
print(f"📇 姓名:{name}")
print(f"🎂 年龄:{age}岁")
print(f"📍 城市:{city}")
print(f"❤️ 爱好:{hobby}")
print("="*30)

练习 2:简单计算器

Python 复制代码
print("=== 简易计算器 ===")
num1 = float(input("请输入第一个数字:"))
num2 = float(input("请输入第二个数字:"))

print(f"\n{num1} + {num2} = {num1 + num2}")
print(f"{num1} - {num2} = {num1 - num2}")
print(f"{num1} × {num2} = {num1 * num2}")
print(f"{num1} ÷ {num2} = {num1 / num2}")

练习 3:问候机器人

Python 复制代码
print("🤖 你好!我是你的问候机器人~")
name = input("请问怎么称呼你?")
time = input("现在是早上、下午还是晚上?")

if time == "早上":
    print(f"早上好,{name}!祝你今天元气满满!☀️")
elif time == "下午":
    print(f"下午好,{name}!工作累了吗?记得休息哦~☕")
elif time == "晚上":
    print(f"晚上好,{name}!早点休息,晚安!🌙")
else:
    print(f"你好,{name}!无论何时,我都在这里帮你!✨")

四、格式化输出进阶

4.1 f-string(推荐)

Python 复制代码
name = "Python"
version = 3.12

print(f"{name} 最新版本是 {version}")
print(f"{name:_^20}")  # 居中,用_填充
# 输出:_______Python________

price = 199.5678
print(f"价格:{price:.2f}")  # 保留 2 位小数
# 输出:价格:199.57

4.2 format() 方法

Python 复制代码
# 位置参数
print("{} 今年 {} 岁".format("小明", 18))

# 关键字参数
print("{name} 喜欢 {hobby}".format(name="小红", hobby="编程"))

# 格式化数字
print("圆周率:{:.3f}".format(3.1415926))
# 输出:圆周率:3.142

五、常见错误与调试

错误 1:类型不匹配

Python 复制代码
# ❌ 错误
age = input("年龄:")
print(age + 1)  # TypeError: can only concatenate str to str

# ✅ 正确
age = int(input("年龄:"))
print(age + 1)

错误 2:转换失败

Python 复制代码
# ❌ 错误
num = int(input("请输入数字:"))  # 输入"abc"会报错

# ✅ 正确处理
try:
    num = int(input("请输入数字:"))
except ValueError:
    print("输入无效,请输入数字!")

六、今日挑战

🎯 挑战 1:BMI 计算器

编写一个程序,计算用户的 BMI 指数:

  • 输入身高(米)和体重(千克)
  • 计算公式:BMI = 体重 / (身高 × 身高)
  • 输出结果并判断:
    • BMI < 18.5:偏瘦
    • 18.5 ≤ BMI < 24:正常
    • 24 ≤ BMI < 28:偏胖
    • BMI ≥ 28:肥胖

🎯 挑战 2:故事生成器

创建一个互动故事:

  1. 询问用户5个问题(名字、地点、动物、食物、心情)
  2. 用这些答案编一个有趣的小故事
  3. 用漂亮的格式输出 示例输出:
Plain 复制代码
📖 《小明的冒险》

在一个阳光明媚的 北京,
小明 遇到了一只会说话的 熊猫。
它们一起分享了美味的 火锅,
度过了一个非常 开心 的下午!

七、小结

函数 作用 返回值类型
print() 输出信息到屏幕 None
input() 从键盘获取输入 str

!SUCCESS\] 关键要点: * `input()`返回的永远是字符串 * 需要数字时用`int()`或`float()`转换 * `f-string`是最推荐的格式化方式 * 用`sep` 和`end`控制输出格式


!note


相关推荐
明月_清风2 小时前
宿命的对决:深度对比 JavaScript 与 Python 的异步进化论
后端·python
明月_清风3 小时前
别再纠结 Conda 了!2026 年,uv 才是 Python 环境管理的唯一真神
后端·python
salipopl3 小时前
Spring 中的 @ExceptionHandler 注解详解与应用
java·后端·spring
jessecyj3 小时前
SpringBoot详解
java·spring boot·后端
爱吃的小肥羊3 小时前
刚刚!Claude最强大模型泄露,Anthropic紧急封锁
后端
qqty12173 小时前
Spring Boot管理用户数据
java·spring boot·后端
bearpping4 小时前
SpringBoot最佳实践之 - 使用AOP记录操作日志
java·spring boot·后端
一叶飘零_sweeeet4 小时前
线上故障零扩散:全链路监控、智能告警与应急响应 SOP 完整落地指南
java·后端·spring
开心就好20255 小时前
不同阶段的 iOS 应用混淆工具怎么组合使用,源码混淆、IPA混淆
后端·ios