Python基础教程(第3版)中文版 第11章 文件(笔记)

简介: Python基础教程(第3版)中文版 第11章 文件(笔记)

                                   第11章 文件

1.打开文件

使用函数 open 打开文件。

参数是文件名,返回文件对象

例:f = open('somefile.txt')

#如果文件和代码不在一个目录下,需要完整路径

文件模式(mode)

'r' : 读取(默认)

'w' : 写入

'x' : 独占写入,文件已存在时引发异常

'a' : 附加 #文件末尾继续写入

'b' : 二进制

't' : 文本(默认)

'+' : 读写

2.文件的基本方法

1.读取和写入

read 和 write

例:f = open('somefile.txt','w')

f.write('hello, ')

f.write('World!')

f.close()

2.使用管道重定向输出

在bash等shell中,可依次输入多个命令,使用管道(|)链接。

例:$ cat somefile.txt | python somescript.py | sort

3.读取和写入行

readline,提供非负整数(可选)表示读取字符数

readlines,读取所有行,列表形式返回

writelines和readlines相反,接受字符串列表,写入文件。

#没有writeline,因为有write

4.关闭文件

close

要确保文件得以关闭,可使用一条try/finally语句,并在finally子句中调用close。

# 在这里打开文件

try:

# 将数据写入到文件中

finally:

file.close()

或者使用with语句

with open("sonefile.txt") as somefile:

   do_someting...


5.使用文件的基本方法(略)

3.迭代文件内容

1每次一个字符

遍历字符:

with open(filename) as f:

   char = f.read(1)

   while char:

       process(char)

       char = f.read(1)

或者使用更简洁的版本:

with open(filename) as f:

   while True:

       char = f.read(1)

       if not char: break

       process(char)

2.每次一行

将上面的read(1)改成readline

with open(filename) as f:

   while True:

       line = f.readline()

       if not line: break

       process(line)

3.读取所有内容

with open(filename) as f:

   for char in f.read():

       process(char)


with open(filename) as f:

   for line in f.readlines():

       process(line)

4.使用fileinput实现延迟行迭代(针对大型文件)

import fileinput

for line in fileinput.input(filename):

   process(line)

5.文件迭代器

文件是可迭代的

with open(filename) as f:

   for line in f:

       process(line)


相关文章
|
2月前
|
数据可视化 Linux iOS开发
Python脚本转EXE文件实战指南:从原理到操作全解析
本教程详解如何将Python脚本打包为EXE文件,涵盖PyInstaller、auto-py-to-exe和cx_Freeze三种工具,包含实战案例与常见问题解决方案,助你轻松发布独立运行的Python程序。
845 2
|
30天前
|
索引 Python
Python 列表切片赋值教程:掌握 “移花接木” 式列表修改技巧
本文通过生动的“嫁接”比喻,讲解Python列表切片赋值操作。切片可修改原列表内容,实现头部、尾部或中间元素替换,支持不等长赋值,灵活实现列表结构更新。
106 1
|
2月前
|
数据采集 存储 XML
Python爬虫技术:从基础到实战的完整教程
最后强调: 父母法律法规限制下进行网络抓取活动; 不得侵犯他人版权隐私利益; 同时也要注意个人安全防止泄露敏感信息.
642 19
|
1月前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。
|
2月前
|
数据采集 存储 JSON
使用Python获取1688商品详情的教程
本教程介绍如何使用Python爬取1688商品详情信息,涵盖环境配置、代码编写、数据处理及合法合规注意事项,助你快速掌握商品数据抓取与保存技巧。
|
3月前
|
缓存 数据可视化 Linux
Python文件/目录比较实战:排除特定类型的实用技巧
本文通过四个实战案例,详解如何使用Python比较目录差异并灵活排除特定文件,涵盖基础比较、大文件处理、跨平台适配与可视化报告生成,助力开发者高效完成目录同步与数据校验任务。
141 0
|
3月前
|
并行计算 算法 Java
Python3解释器深度解析与实战教程:从源码到性能优化的全路径探索
Python解释器不止CPython,还包括PyPy、MicroPython、GraalVM等,各具特色,适用于不同场景。本文深入解析Python解释器的工作原理、内存管理机制、GIL限制及其优化策略,并介绍性能调优工具链及未来发展方向,助力开发者提升Python应用性能。
224 0
|
3月前
|
数据采集 索引 Python
Python Slice函数使用教程 - 详解与示例 | Python切片操作指南
Python中的`slice()`函数用于创建切片对象,以便对序列(如列表、字符串、元组)进行高效切片操作。它支持指定起始索引、结束索引和步长,提升代码可读性和灵活性。
|
4月前
|
安全 Linux 网络安全
Python极速搭建局域网文件共享服务器:一行命令实现HTTPS安全传输
本文介绍如何利用Python的http.server模块,通过一行命令快速搭建支持HTTPS的安全文件下载服务器,无需第三方工具,3分钟部署,保障局域网文件共享的隐私与安全。
870 0
|
10月前
|
存储 数据采集 数据处理
如何在Python中高效地读写大型文件?
大家好,我是V哥。上一篇介绍了Python文件读写操作,今天聊聊如何高效处理大型文件。主要方法包括:逐行读取、分块读取、内存映射(mmap)、pandas分块处理CSV、numpy处理二进制文件、itertools迭代处理及linecache逐行读取。这些方法能有效节省内存,提升效率。关注威哥爱编程,学习更多Python技巧。
258 8

推荐镜像

更多