Python 输入输出函数详解
在 Python 编程中,输入和输出 (I/O) 是程序与用户交互以及程序读写文件的关键组成部分。Python 提供了几个内置函数来处理这些操作。本文将详细介绍 input()
、print()
和 open()
这三个常用的 I/O 函数,并提供示例,帮助新手快速上手。
1. input()
函数:获取用户输入
input()
函数允许你的程序暂停执行,等待用户从键盘输入一些内容。用户输入的内容会被读取为一个字符串,并可以赋值给变量。
基本用法:
python
name = input("请输入你的名字:") # 提示用户输入名字
print("你好," + name + "!") # 打印问候语
运行结果:
请输入你的名字:小明
你好,小明!
解释:
input("请输入你的名字:")
会在控制台显示 "请输入你的名字:",并等待用户输入。- 用户输入 "小明" 后,
input()
函数会将 "小明" 作为字符串返回。 name = ...
将返回的字符串赋值给变量name
。print("你好," + name + "!")
打印包含用户输入的名字的问候语。
进阶用法:类型转换
input()
函数返回的始终是字符串。如果需要将输入转换为其他类型(例如整数或浮点数),可以使用类型转换函数。
python
age = input("请输入你的年龄:") # 提示用户输入年龄
age = int(age) # 将字符串转换为整数
print("你明年 " + str(age + 1) + " 岁了。") # 打印明年的年龄
运行结果:
请输入你的年龄:25
你明年 26 岁了。
注意事项:
- 在使用
input()
函数时,务必提供清晰的提示信息,以便用户知道需要输入什么内容。 - 如果需要将输入转换为数字类型,一定要进行错误处理,以防止用户输入无效的数据导致程序崩溃。可以使用
try-except
语句来捕获ValueError
异常。
python
try:
age = input("请输入你的年龄:")
age = int(age)
print("你明年 " + str(age + 1) + " 岁了。")
except ValueError:
print("输入的年龄无效,请输入一个整数。")
2. print()
函数:输出信息
print()
函数用于将信息输出到标准输出(通常是控制台)。它可以输出变量的值、表达式的结果、字符串等等。
基本用法:
python
name = "李华"
age = 30
print("姓名:", name)
print("年龄:", age)
print("姓名:", name, ",年龄:", age) # 使用多个参数
运行结果:
姓名: 李华
年龄: 30
姓名: 李华 ,年龄: 30
解释:
print()
函数可以接受多个参数,参数之间用逗号分隔。print()
函数会自动在参数之间添加空格。print()
函数默认在输出结束后换行。
进阶用法:格式化输出
可以使用字符串的 format()
方法或者 f-strings 来进行格式化输出,使输出更加美观和易读。
使用 format()
方法:
python
name = "王芳"
score = 95.5
print("姓名:{},成绩:{}".format(name, score))
print("姓名:{0},成绩:{1:.2f}".format(name, score)) # 指定参数的索引,并格式化浮点数
使用 f-strings (Python 3.6+):
python
name = "赵刚"
score = 88
print(f"姓名:{name},成绩:{score}")
print(f"姓名:{name},成绩:{score:.1f}") # 格式化输出,保留一位小数 (如果 score 是浮点数)
运行结果:
姓名:王芳,成绩:95.5
姓名:王芳,成绩:95.50
姓名:赵刚,成绩:88
姓名:赵刚,成绩:88.0
print()
函数的参数:
sep
: 指定分隔符,默认为空格。end
: 指定结束符,默认为换行符\n
。file
: 指定输出文件,默认为sys.stdout
(标准输出)。
python
print("Hello", "World", sep="-", end="!\n") # 使用指定的分隔符和结束符
运行结果:
Hello-World!
3. open()
函数:文件操作
open()
函数用于打开一个文件,并返回一个文件对象。通过文件对象,可以对文件进行读取、写入等操作。
基本用法:
python
file = open("my_file.txt", "r") # 以只读模式打开文件
content = file.read() # 读取文件内容
print(content) # 打印文件内容
file.close() # 关闭文件
解释:
open("my_file.txt", "r")
打开名为 "my_file.txt" 的文件,并以只读模式 ("r") 返回一个文件对象。如果文件不存在,会抛出FileNotFoundError
异常。file.read()
读取文件的全部内容,并将其作为一个字符串返回。print(content)
打印文件内容。file.close()
关闭文件。务必在使用完文件后关闭它,以释放资源。
常用的文件打开模式:
"r"
: 只读模式 (默认)。"w"
: 写入模式。如果文件已存在,会覆盖原有内容。如果文件不存在,会创建新文件。"a"
: 追加模式。如果文件已存在,会在文件末尾追加内容。如果文件不存在,会创建新文件。"x"
: 排它性创建模式。如果文件已存在,open()
操作将会失败。"b"
: 二进制模式。用于处理二进制文件,如图片、视频等。"t"
: 文本模式 (默认)。"+"
: 读写模式。可以同时进行读写操作。
示例:写入文件
python
file = open("my_file.txt", "w") # 以写入模式打开文件
file.write("Hello, world!\n") # 写入字符串到文件
file.write("This is a new line.\n")
file.close()
示例:使用 with
语句自动关闭文件
使用 with
语句可以确保在代码块执行完毕后自动关闭文件,即使发生异常也能正确关闭文件。
python
with open("my_file.txt", "r") as file:
content = file.read()
print(content)
# 文件在这里自动关闭
掌握 input()
、print()
和 open()
这三个 I/O 函数是 Python 编程的基础。通过它们,你可以实现与用户的交互、信息的输出以及文件的读写操作。希望本文能够帮助你入门 Python I/O 编程。