Python教程:Python中的输入与输出操作

在编程语言中,输入(Input)和输出(Output),简称I/O,是基础且重要的概念。Python作为一门易于学习且功能强大的编程语言,在处理输入和输出方面提供了多种方式。本文将深入探讨Python中的输入输出操作,包括标准输入输出、文件操作、以及网络I/O等领域

标准输入输出


标准输入输出是最基本的I/O形式,通常指的是程序与用户通过命令行界面的交互。

输入:input()

在Python中,input()函数用于接收用户的文本输入。当程序执行到input()时,会暂停等待用户输入,用户输入内容后按回车键继续执行。

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

输出:print()

print()函数用于向标准输出设备(通常是屏幕)输出信息。

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

print()函数还可以接受多个参数,使用分隔符连接,并在末尾添加换行符。

python 复制代码
print("姓名", "性别", "年龄", sep=", ", end=".\n")

文件操作


Python对文件的操作同样简单直观。主要通过open()函数打开文件,然后可以进行读取或写入操作。

打开文件:open()

open()函数用于打开一个文件,返回一个文件对象。它的基本语法为open(file, mode='r'),其中file是文件的路径,mode是打开文件的模式,默认为只读模式。

python 复制代码
f = open("example.txt", "r")

读取文件

文件打开后,可以使用read(), readline()或readlines()等方法读取内容。

python 复制代码
content = f.read()  # 读取全部内容
print(content)
f.close()

写入文件

打开文件时使用写入模式('w', 'a' 等),就可以向文件写入内容。

python 复制代码
f = open("example.txt", "w")
f.write("Hello, Python!\n")
f.close()

使用with语句操作文件

为了确保文件正确关闭,推荐使用with语句,这样可以自动管理文件的打开和关闭。

python 复制代码
with open("example.txt", "r") as f:
    content = f.read()
    print(content)

网络I/O


在Python中,网络I/O主要涉及到套接字编程。socket模块提供了丰富的方法来支持网络通信。

创建套接字

python 复制代码
import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

服务器端监听客户端连接

python 复制代码
host = 'localhost'
port = 12345
s.bind((host, port))
s.listen(5)
print("服务器启动,等待连接...")
conn, addr = s.accept()
print(f"连接地址:{addr}")
conn.close()

客户端连接服务器

python 复制代码
s.connect((host, port))
s.sendall(b'Hello, server!')
s.close()

结论


Python在输入输出方面提供了丰富而灵活的操作方式,无论是基本的标准输入输出,复杂的文件处理,还是网络通信,都能简洁高效地完成。

Python的输入输出功能不仅限于本文介绍的内容,还有更多高级特性等待探索,例如格式化输出、二进制文件处理、异步I/O等。

相关推荐
默_笙4 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
qq_426003964 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫4 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
长沙三为智能科技4 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
只睡四小时4 天前
Canvas 弹道联机实战:700 行 + 固定时间步长
python·websocket·html5·游戏开发·canvas
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++
奇思妙想聪明勤奋的小羊4 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
lpfasd1234 天前
2026年第38周GitHub趋势周报
python·科技·github