Python-文件的管理

简介:

wKioL1mxLimxM3dZAAE1u9bLUlA591.png

字符的输入及输出
输入(raw_input/input)---> 程序处理 ---> 输出(print)

一.文件管理的三大步骤:


1.打开文件; f = open("filename")    
2.处理文件; 
        f.read()                      可以读取文件内容
        f.write("hello")         不能往文件中写入,因为默认文件以r的模式打开;
3.关闭并保存文件; f.close()

    文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源。


二.文件的几种模式总结:

1. r模式:
若文件不存在,直接报错;
文件只能读取,不能写入;

wKiom1mv7hnivYWdAAAvW2ure_I367.png

wKioL1mv7fvSe4G-AACIUIkeqh4749.png


2. w模式:
若文件不存在,直接创建文件;
文件只能写入,不能读取;
打开文件时会清空原有文件内容;

wKioL1mv7m6hHZj6AACDw-C9OaQ238.png


3. r+模式:
若文件不存在,直接报错;
文件可以读也可以写;
具体写入的内容在哪里,由文件指针(句柄)决定;

先读后写

wKioL1mv76OD8VXwAABjbSOV9ZM098.png


先写后读

wKiom1mv78KQnKN-AABOfuFFGpw164.png


4. w+模式:
若文件不存在,直接创建文件;
文件既能写入也能读取;
打开文件时会清空原有文件内容;

wKiom1mv8F2gHzuSAABfBbulno8009.png


5. a模式
若文件不存在,直接创建文件;
文件只能写入,不能读取;
写入的内容直接追加到文件最后;

wKiom1mv8PKCxSPBAACUGAsZbno186.png


6. a+模式
若文件不存在,直接创建文件;
文件既能写入也能读取;
写入的内容直接追加到文件最后;

wKiom1mv8TCTNj0iAACpyUiO9ak089.png


7. b模式
以二进制的方式打开文件,可以跟r,w,+等组合使用;

二进制文件
要读取二进制文件,比如图片、视频等等,用 'rb' 模式打开文件即可
>>> f = open('/root/test.jpg', 'rb')
>>> f.read()
'\xff\xd8\xff\xe1\x00\x18Exif\x00\x00...' # 十六进制表示的字节



三.文件的读取

将passwd里的文件内容追加到hello.txt中

wKioL1mv81jgTUzPAAAZOi95oZk804.png

read()                 直接读取文件所有内容;

readline()           每次读取文件一行内容,返回类型为字符串;

wKiom1mv83ehEPVSAABlhgQBpWE936.png


readlines()         读取文件所有内容,以列表形式返回;

wKiom1mv83jSuDviAACWOzr6ogg286.png


xreadlines()       类似生成器,文件内容不直接以列表方式返回;读取内容多时用

wKioL1mv81nS3bO9AACc69rx4sI918.png

wKiom1mv83jgBZa-AADrrFxzu4k819.png




四.文件的写入
write("str")                # 将字符串写入文件
writelines("["hello","world"]")        # 将序列的每个元素写入文件;

wKiom1mv9abQGS-3AAA6V5cqL0I170.png

wKioL1mv9YfxK-2EAABOoThEXmM238.png


五.文件的其它操作

1.f.seek(偏移量,选项)    
     偏移量,如果为正数,代表向右偏移;如果为负数,代表向左偏移;
     选项,如果为0,指针指向文件开始;
              如果为1,指针指向当前位置;
              如果为2,指针指向文件末尾;



2.f.flush()        提交对文件的修改;


六.文件的几个注意点:


1.文件对象是可迭代数据类型,可以通过for遍历文件的内容;

wKioL1mv9wnR9YMcAAA7z1mumGQ318.png


2.with open("filename") as f:通过这种方法来避免用户忘记关闭文件的问题;不用写f.close()

wKiom1mv91qTFTsJAAAoThwWTPQ728.png






      本文转自一百个小排 51CTO博客,原文链接:http://blog.51cto.com/anfishr/1963269,如需转载请自行联系原作者




相关文章
|
3天前
|
Python
用python3快速读取30G+的txt文件
这篇文章介绍了如何使用Python分块读取大文件(如30G+的txt文件),通过设置每次读取的块大小来处理大型文本文件,以减少内存消耗并提高处理效率。
27 14
|
3天前
|
数据安全/隐私保护 Python
用python对文件内容进行加密的2种方式
这篇文章介绍了使用Python对文件内容进行加密的两种方式:利用`cryptography`库的Fernet对称加密和使用`rsa`库进行RSA非对称加密。
21 6
|
3天前
|
Python
python简单分割文件的方法(python经典案例)
这篇文章介绍了两种使用Python进行文件分割的方法:通过读取指定字节数分割大文件成小文件,以及通过行数将文本文件分割成多个小文件。
13 1
|
10天前
|
数据挖掘 Python
🚀告别繁琐!Python I/O管理实战,文件读写效率飙升的秘密
在日常编程中,高效的文件I/O管理对提升程序性能至关重要。Python通过内置的`open`函数及丰富的库简化了文件读写操作。本文从基本的文件读写入手,介绍了使用`with`语句自动管理文件、批量读写以减少I/O次数、调整缓冲区大小、选择合适编码格式以及利用第三方库(如pandas和numpy)等技巧,帮助你显著提升文件处理效率,让编程工作更加高效便捷。
26 0
|
1天前
|
缓存 开发者 Python
Python指定行号读取文件的方法
这种方法的优势在于它的效率和简便性,特别是当需要从同一文件中读取多行时。`linecache`会缓存文件,减少了重复读取的开销。
10 4
|
3天前
|
Python
python3压缩和解压文件总结(python经典编程案例)
这篇文章总结了在Python 3中使用不同库对文件进行压缩和解压的方法,包括tar、7z、zip和gzip格式的操作示例。
13 4
|
1天前
|
存储 文件存储 Python
python如何把字节写到文件里4-2
python如何把字节写到文件里4-2
|
2天前
|
Python
Python批量复制指定名称文件的技巧
通过上述步骤和示例代码,你可以轻松实现批量复制特定名称文件的功能。这种技术不仅节省了时间,而且通过脚本自动化,提高了工作效率。
11 2
|
29天前
|
安全 项目管理 Python
使用Python shutil库进行文件和目录操作
使用Python shutil库进行文件和目录操作
使用Python shutil库进行文件和目录操作
|
18天前
|
Java 数据安全/隐私保护 Python
Python案例分享:如何实现文件的解压缩
Python案例分享:如何实现文件的解压缩
43 8