文件

1.编码格式的介绍

python的解释器使用的是Unicode(内存)

.py文件在磁盘上使用UTF-8储存(外存)

python os文件操作 python os file_打开文件

2.文件的读写原理

文件的读写俗称“IO操作”

文件读写操作流程

操作原理

内置函数open()创建文件对象:

python os文件操作 python os file_python_02


语法规则:

python os文件操作 python os file_打开文件_03

#读取一个文件
file=open('a.txt','r')
print(file.readlines())
file.close()

3.常见的文件打开方式

文件的类型:
文本文件:储存的是普通“字符”文本,默认为unicod字符集,可以使用记事本程序打开

二进制文件:把数据内容用“字节”进行存储,无法用记事本打开,必须使用专业的软件打开。举例:mp3音频文件、 jpg图片、doc文档等

打开模式

describe

r

以只读模式打开文件,文件的指针将会放在文件的开头

w

以只写模式打开文件,如果文件不存在则创建,如果文件存在,则覆盖原有内容,文件指针在文件的开头

a

以追加模式打开文件,如果文件不存在则创建,如果文件存在,则在文件末尾追加内容,文件指针在原文件末尾

b

以二进制方式打开文件,不能单独使用,需要与其他模式一起使用,比如rb或wb

+

以二进制方式打开文件,不能单独使用,需要与其他模式一起使用,比如rb或wb

4.文件对象的常用方法

python os文件操作 python os file_打开文件_04

5.with语句

with语句可以自动管理上下文资源,不论什么原因跳出with语句都能确保文件正确的关闭,以此来达到释放资源的目的

python os文件操作 python os file_os模块_05

with open('a.txt','r') as file:
    print(file.read())
'''
MyContentMgr实现了特殊方法__enter__(),__exit__称为该类对象遵守了上下文管理器协议
该对象的实例对象,称为上下文管理器
'''
class MyContentMgr(object):
    def __enter__(self):
        print('enter方法被调用了')
        return self
    def __exit__(self, exc_type, exc_val, exc_tb):
        print('exit方法被执行了')
    def show(self):
        print('show方法被调用了')
with MyContentMgr() as file:    #相当于file=MyContentMgr()
    file.show()

目录操作

os模块是python内置的与操作系统功能和文件系统相关的模块,该模块中的语句的执行结果通常与操作系统有关,在不同的操作系统上运行,得到的结果可能不一样

python os文件操作 python os file_开发语言_06

import os
#os.system('notepad.exe')    #打开电脑上的记事本程序
#os.system('calc.exe')   #打开计算器
#可直接调用可执行文件
#os.startfile('D:\\软件\\安装的软件\\WeChat\\WeChat.exe')  打开路径下的文件
print(os.getcwd())

os模块与os.path模块用于对目录或文件进行操作

python os文件操作 python os file_python os文件操作_07