Python语言基础:23_输入与输出 新手完全指南

Python3 的输入输出(I/O)是程序与外界交互的基础。下面从最基础的 print()input() 开始,一步步深入讲解。


一、输出:print() 函数

print() 是 Python 中最常用的输出函数,作用是把内容显示到屏幕上。

1.1 最基础的输出

python 复制代码
print("Hello, World!")
print(100)
print(3.14)

输出结果:

python 复制代码
Hello, World!
100
3.14

💡 新手注意 :字符串需要用引号(单引号 ' 或双引号 ")包裹,数字不需要。


1.2 同时输出多个内容

print() 可以同时输出多个值,用逗号 , 分隔:

python 复制代码
print("姓名:", "张三")
print("年龄:", 20)
print("身高:", 1.75, "米")

输出结果:

python 复制代码
姓名: 张三
年龄: 20
身高: 1.75 米

💡 新手注意 :逗号分隔时,Python 会自动在每个值之间加一个空格


1.3 自定义分隔符:sep 参数

默认逗号分隔会加空格,你可以用 sep 参数自定义:

python 复制代码
print("2026", "07", "25", sep="-")      # 用横线连接
print("10", "30", "00", sep=":")        # 用冒号连接
print("北京", "上海", "广州", sep="→")   # 用箭头连接

输出结果:

python 复制代码
2026-07-25
10:30:00
北京→上海→广州

1.4 自定义结尾:end 参数

默认 print() 输出后会换行 ,你可以用 end 参数改变:

python 复制代码
print("正在加载", end="")
print("...", end="")
print("完成!")

输出结果:

复制代码
正在加载...完成!

再举几个例子:

python 复制代码
print("第一行", end=" | ")
print("第二行", end=" | ")
print("第三行")

输出结果:

复制代码
第一行 | 第二行 | 第三行

💡 新手注意end="" 表示结尾什么都不加;end=" " 表示结尾加一个空格;默认是 end="\n"(换行符)。


1.5 输出变量

python 复制代码
name = "李四"
age = 25
score = 89.5

print(name)
print(age)
print(score)
print(name, age, score)

输出结果:

python 复制代码
李四
25
89.5
李四 25 89.5

二、输入:input() 函数

input() 函数用于从键盘接收用户输入。

2.1 最基础的输入

python 复制代码
name = input()
print("你好,", name)

运行后程序会暂停,等待你输入内容,按回车键后才会继续执行。


2.2 带提示语的输入

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

运行示例:

python 复制代码
请输入你的名字:王五
你好, 王五 !

💡 新手注意input() 括号里的字符串是提示信息,会显示在屏幕上,告诉用户该输入什么。


2.3 输入数字(非常重要!)

这是新手最容易出错的地方! input() 接收到的内容永远是字符串(str)类型,即使输入的是数字。

python 复制代码
age = input("请输入你的年龄:")
print(type(age))          # 查看数据类型
print(age)

如果你输入 20,输出是:

复制代码
<class 'str'>
20

看到 <class 'str'> 了吗?说明 age 是字符串,不是数字!


2.4 输入数字的正确做法:类型转换

如果你需要做数学运算,必须先把输入转换成数字:

转换成整数:int()
python 复制代码
age = input("请输入你的年龄:")
age = int(age)            # 把字符串转成整数
print("明年你的年龄是:", age + 1)

运行示例:

复制代码
请输入你的年龄:20
明年你的年龄是: 21
转换成小数:float()
python 复制代码
height = input("请输入你的身高(米):")
height = float(height)    # 把字符串转成浮点数
print("你的身高是:", height, "米")

运行示例:

python 复制代码
请输入你的身高(米):1.75
你的身高是: 1.75 米
更简洁的写法(合并为一行)
python 复制代码
age = int(input("请输入你的年龄:"))
height = float(input("请输入你的身高:"))

⚠️ 新手注意 :如果用户输入的不是数字(比如输入了"abc"),int()float() 会报错。后续学习 try...except 可以处理这种情况。


2.5 输入多个值

python 复制代码
# 一行输入多个值,用空格分隔
a, b = input("请输入两个数字,用空格分开:").split()
a = int(a)
b = int(b)
print("两数之和:", a + b)

运行示例:

复制代码
请输入两个数字,用空格分开:10 20
两数之和: 30

💡 说明:split() 方法会把输入的字符串按空格切分成多个部分。


三、格式化输出(让输出更美观)

3.1 方法一:f-string(最推荐,Python 3.6+)

在字符串前面加 f,变量用 {} 包裹:

python 复制代码
name = "张三"
age = 20
score = 92.5

print(f"姓名:{name}")
print(f"年龄:{age} 岁")
print(f"成绩:{score} 分")
print(f"{name} 今年 {age} 岁,考了 {score} 分")

输出结果:

python 复制代码
姓名:张三
年龄:20 岁
成绩:92.5 分
张三 今年 20 岁,考了 92.5 分
控制小数位数
python 复制代码
pi = 3.1415926535
print(f"圆周率保留2位:{pi:.2f}")   # .2f 表示保留2位小数
print(f"圆周率保留4位:{pi:.4f}")

输出结果:

python 复制代码
圆周率保留2位:3.14
圆周率保留4位:3.1416
控制宽度与对齐
python 复制代码
name1 = "Alice"
name2 = "Bob"
score1 = 95
score2 = 88

print(f"{'姓名':<10} {'成绩':>5}")   # < 左对齐,> 右对齐
print(f"{name1:<10} {score1:>5}")
print(f"{name2:<10} {score2:>5}")

输出结果:

python 复制代码
姓名          成绩
Alice         95
Bob           88

:<10 表示左对齐,占10个字符宽度;:>5 表示右对齐,占5个字符宽度。


3.2 方法二:str.format()

python 复制代码
name = "李四"
age = 22

print("姓名:{},年龄:{}".format(name, age))

输出结果:

复制代码
姓名:李四,年龄:22
指定位置
python 复制代码
print("{1} 比 {0} 大".format("小明", "小红"))
# {0} 对应第一个参数"小明",{1} 对应第二个参数"小红"

输出结果:

复制代码
小红 比 小明 大

3.3 方法三:% 格式化(较老,了解即可)

python 复制代码
name = "王五"
age = 25
score = 88.5

print("姓名:%s" % name)         # %s 表示字符串
print("年龄:%d" % age)         # %d 表示整数
print("成绩:%.1f" % score)     # %.1f 表示保留1位小数
print("%s 今年 %d 岁,成绩 %.1f" % (name, age, score))

输出结果:

复制代码
姓名:王五
年龄:25
成绩:88.5
王五 今年 25 岁,成绩 88.5

四、综合练习示例

示例 1:简单的计算器

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

print(f"{num1} + {num2} = {num1 + num2}")
print(f"{num1} - {num2} = {num1 - num2}")
print(f"{num1} × {num2} = {num1 * num2}")
print(f"{num1} ÷ {num2} = {num1 / num2:.2f}")

运行示例:

python 复制代码
===== 简易计算器 =====
请输入第一个数字:10
请输入第二个数字:3
10.0 + 3.0 = 13.0
10.0 - 3.0 = 7.0
10.0 × 3.0 = 30.0
10.0 ÷ 3.0 = 3.33

示例 2:成绩登记表

python 复制代码
print("===== 学生成绩登记 =====")

name = input("姓名:")
chinese = int(input("语文成绩:"))
math = int(input("数学成绩:"))
english = int(input("英语成绩:"))

total = chinese + math + english
average = total / 3

print("\n===== 成绩单 =====")
print(f"姓名:{name}")
print(f"语文:{chinese}  数学:{math}  英语:{english}")
print(f"总分:{total}")
print(f"平均分:{average:.1f}")

运行示例:

python 复制代码
===== 学生成绩登记 =====
姓名:小明
语文成绩:85
数学成绩:92
英语成绩:78

===== 成绩单 =====
姓名:小明
语文:85  数学:92  英语:78
总分:255
平均分:85.0

示例 3:打印三角形

python 复制代码
print("   *")
print("  ***")
print(" *****")
print("*******")

或者用 printend 参数:

python 复制代码
print("*", end="")
print("*", end="")
print("*")
print("上面打印了3个星号")

五、重点总结

|--------|--------------|---------------------------------|
| 功能 | 函数/方法 | 关键说明 |
| 输出 | print() | 可输出多个值,用 sep 控制分隔符,end 控制结尾 |
| 输入 | input() | 返回值永远是字符串 |
| 转整数 | int() | 把字符串转成整数 |
| 转小数 | float() | 把字符串转成浮点数 |
| 格式化 | f"..." | 最推荐,用 {} 嵌入变量 |
| 保留小数 | f"{x:.2f}" | .2f 保留2位小数 |


六、新手常见错误

❌ 错误 1:忘记类型转换

复制代码
age = input("年龄:")
print(age + 1)    # 报错!字符串不能和整数相加

✅ 正确做法

复制代码
age = int(input("年龄:"))
print(age + 1)

❌ 错误 2:print 里用等号

复制代码
print("a" = 10)   # 报错!print 里不能用赋值语句

✅ 正确做法

python 复制代码
a = 10
print("a =", a)
# 或
print(f"a = {a}")

❌ 错误 3:input 提示语后面忘加括号

python 复制代码
input "请输入:"    # 报错!

✅ 正确做法

python 复制代码
input("请输入:")

相关推荐
海盗12341 天前
微软技术日报——2026-07-30
microsoft
XUHUOJUN1 天前
Azure Stack Hub 管理员日常操作:从 StampInformation 到 PEP、区域管理与容量监管
microsoft·azure stack
2501_936415691 天前
Stream流和方法引用
windows·microsoft
牡丹雅忻11 天前
微软开源的 MCP 教程「GitHub 热点速览」
microsoft·开源·github
找方案2 天前
北京砸1亿支持智能体:Agent创业迎来黄金窗口期
大数据·人工智能·microsoft
极地野狼 音乐哔哔2 天前
[MAF预定义的AIContextProvider-03]ChatHistoryMemoryProvider——赋予Agent从经验中学习的能力
学习·microsoft
梓仁沐白2 天前
【Agent 设计模式】多智能体协作
microsoft·设计模式·php
人工智能研究所3 天前
ResearchStudio-Reel: 学术论文到海报、视频、博客的“最后一公里“
人工智能·microsoft·音视频·博客·ppt·学术论文·ai创作
海盗12343 天前
微软技术日报 — 2026-07-28
microsoft