文件操作方法

文件操作

什么是文件?

        文件就是操作系统暴露给用户操作硬盘的快捷方式(接口)

代码如何caozuo文件?

        关键字  open()

        三步走:

                1、利用关键字打开文件

                2、利用其它方法操作文件

                3、关闭文件

"""
文件路径
    相对路径与绝对路径
    路径中出现了字母与斜杠的组合产生了特殊含义如何取消
        在路径字符串前面加一个r
            r'D:\py20\day08\a.txt'
"""

open ('b.txt')    >>>打开文件

open(r'D:\py\old.txt')  >>>绝对路径

res = open('a.txt','r',encoding='utf8')   

print(res.read())

res.clsoe()  >>>关闭文件释放资源

格式: open(文件路径,读写模式,字符编码)
            文件路径与读写模式是必须的
            字符编码是可选的(有些模式需要编码)

with上下文管理(自动close文件)

with open(r'a.txt','r',encoding='utf8') as f1:  # f1=open() f1.close()

        print(f1.read())        >>>读取文件内所有的内容

"""代码操作文件 推荐使用with语法"""

文件 du xie 模式

r:只读模式(只能看不能改)

路径不存在的话,直接报错

with open(r'b.txt,'r',encoding='utf8') as f:    

print(f.read())   >>>读取文件内所有的内容

w:只写模式(只能写不能看)

路径不存在的话,会自动创建
 with open(r'b.txt', 'w', encoding='utf8') as f:

路径存在:1.会先清空文件内容  2.再执行写入操作
    with open(r'a.txt', 'w', encoding='utf8') as f:
        >>> f.read()
        f.write('hello world!\n')
        f.write('hello world!\n')
        f.write('hello world!\n')

a   只追加模式(追加内容)

 a模式  只追加模式
 路径不存在:自动创建
with open(r'a.txt','a',encoding='utf8') as f:
    pass
 路径存在:不会清空文件 在文件末尾添加内容

文件 cao zuo 优化

with open(r'a.txt', 'r', encoding='utf8') as f:
    # print(f.read())  # 一次性读取文件内所有的内容
    # print(f.read())  # 一次性读取文件内所有的内容
    # print(f.read())  # 一次性读取文件内所有的内容
    """
    1.一次性读完之后 光标停留在了文件末尾 无法再次读取内容
    2.该方法在读取大文件的时候 可能会造成内存溢出的情况
        解决上述问题的策略就是逐行读取文件内容
    """
    # for line in f:  # 文件变量名f支持for循环  相当于一行行读取文件内容
    #     line
    '''以后涉及到多行文件内容的情况一般都是采用for循环读取'''

常见文件操作方法:

read()  # 一次性读取文本内容(当文件内容特别大的时候容易造成内存出)
readline()  # 一次性读取文件一行内容
readlines()  # 也是一次性读取文件内容 组织成列表返回 每个元素是行
readable()  # 是否具备可读的能力
write()  # 写入内容
writelines()  # 循环写入容器内每个元素
writeable()  # 是否具备可写的能力
flush()  # 立刻将文件数据刷新到硬盘(人为ctrl+s)

猜你喜欢

转载自blog.csdn.net/qq_64089078/article/details/121292054