欢迎关注博主 python老鸟 或 前往 『Python自学网』, 从基础入门免费课程开始,逐步深入学习python全栈体系课程,适合新手入门到精通全栈开发。
免费专栏传送门:《Python基础教程》
目录
需求: 用代码的方式来实现文件复制过程。(把源文件复制到一个新的文件中)
一、复制小文件
打开一个已有文件,读取完整内容,并写入到另外一个文件
1.1》复制小文件具体步骤
- 使用open函数打开两个文件,一个是源文件,一个是目标文件,原文件只读方式打开,目标文件只写方式打开
- 使用read方法一次性把源文件内容读取出来,然后把读取内容直接写入到目标文件中
- 关闭源文件和目标文件
1.2》 代码示例
准备一个源文件,内容如下:
代码:
# 1.打开文件
file_read = open("HELLO", encoding="UTF_8") # 只读方式
file_write = open("HELLO(复件)", "w", encoding="UTF_8") # 只写方式
# 2. 读、写
text = file_read.read()
file_write.write(text)
# 3. 关闭文件
file_read.close()
file_write.close()
注意:不写encoding=”UTF_8″能打开表示Python编码没错误,不用我这样加上这个编码代码。
执行结果:
二、复制大文件
- 大文件不适合用一次性读取,因为源文件太大一次性读取会给内存造成太大的压力
- 打开一个已有文件,逐行读取完整内容,并顺序写入到另外一个文件中
2.1》复制大文件具体步骤
和上面复制小文件步骤很相似,只需要修改第二步
- 1、使用open函数打开两个文件,一个是源文件,一个是目标文件,原文件只读方式打开,目标文件只写方式打开
- 2、使用无限循环并判断一行一行读取代码,使用readline()把源文件内容逐行读取出来,然后把读取内容顺序直接写入到目标文件中
- 3、关闭源文件和目标文件
2.2》代码示例
准备工作:准备一组源文件数据
代码:
# 1.打开文件
file_read = open("HELLO", encoding="UTF_8") # 只读方式
file_write = open("HELLO(复件)", "w", encoding="UTF_8") # 只写方式
# 2. 读、写
while True:
text = file_read.readline()
# 判断是否读取到内容
if not text:
break
file_write.write(text)
# 3. 关闭文件
file_read.close()
file_write.close()
执行结果:查看复件内容
对上面提到的打开open()、关闭close()、读read()、写writ()、逐行读取readline()这五种文件操作方法/函数不理解不知道的话可以去看之前一篇Python文件操作。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/73305.html