说明
《Python 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
Python 的 I/O 编程主要包括文件 I/O、标准 I/O、内存 I/O、网络 I/O 等。“IO”是“Input/Output”的缩写,即输入/输出。在计算机领域,它涵盖了与数据从外部设备(如键盘、鼠标、磁盘、网络等)进入计算机系统(输入)以及数据从计算机系统发送到外部设备(输出)相关的操作和概念。例如,在编程中,文件读写、网络通信、控制台输入输出等都属于 IO 操作。
常见的 I/O 操作包含多种类型。其中,文件 I/O 操作包括读取文件内容到内存以及向文件写入数据;控制台 I/O 操作涵盖从控制台读取用户输入和向控制台输出信息;网络 I/O 操作涉及通过网络套接字发送和接收数据;设备 I/O 操作是指与各类硬件设备,如打印机、扫描仪等进行数据交互;内存映射文件 I/O 操作是将文件映射到内存以更高效地访问和处理文件数据;管道和套接字通信操作用于在进程间或不同计算机之间通过管道或套接字进行数据交换;数据库 I/O 操作包括与数据库系统进行连接、查询、插入、更新和删除数据等操作。在不同的编程语言中,通常都有相应的库和函数来支持实现这些 I/O 操作。
同步 I/O 和异步 I/O 的区别在于,同步 I/O 时,任务的执行会被 I/O 操作阻塞,直到该操作完成;而异步 I/O 中,任务发起 I/O 操作后可以继续执行其他事务,不必等待 I/O 操作完成,当 I/O 操作完成时会通过某种方式通知任务。
现实生活中的例子如下:
同步 I/O 就好比在餐厅点餐。顾客向服务员点菜后,就站在原地等待服务员上菜,期间不能做其他事情,直到菜上齐。
异步 I/O 则如同顾客在餐厅使用自助点餐机下单后,会得到一个取餐号码,然后可以去做其他事情,比如逛逛餐厅的装饰、看看窗外的风景,等餐点准备好后,餐厅会通过叫号的方式通知顾客取餐。
再比如去银行办理业务,同步 I/O 就像在柜台前排队等待办理业务,必须等到自己的业务办完才能离开;而异步 I/O 相当于在智能柜员机上提交业务申请,然后可以坐在休息区休息或者查看银行的宣传资料,当业务处理完成后,柜员机会发出提示音通知办理完成。
更新时间:2024-06-23 09:34:49 标签:python io 输入 输出