• day08 跟着太白老师学python 文件操作


    文件操作初识:

             1. 文件路径 :d:/护士主妇空姐联系方式  (文件路径不要太过复杂,容易碰到转义字符的问题, 当碰到转义字符时,需要在前面+r,或者采用双斜杠(//))

             2. 编码方式 :utf-8, gbk, gb2312

             3.操作方式: 只读(r),只写(w), 写读(r+), 读写(w+), 追加(a), 追加读(a+)

    1. 读 

    r     只读模式,适合文字类文件, open的默认方式

    rb   非文字类文件的只读方式

    r+  读写功能,先读后写时,写入的字符在文件最后,直接写入,由于光标在开头,将会将开头的字符覆盖

    只读的后续操作方式有5种 

    f = open('d:/老男孩.txt', encode='utf-8', mode='r')
    1.f.read()  所有都能够一次性读取,保留原来格式

    2.f.read(n)  读取部分,对于文本,n以字符串个数表示, 对于非文本, n以字节个数表示,对于utf-8,一个字符用三个字节表示

    3.f.readlines() 读取所有文本,读取的文本以字节形式储存在列表中

    4.f.readline() 只读取一行
    5.for循环读取  for line in f:  print(line)     

    2. 写

    w  只写模式, 适合文字类文件的写入, 文件不存在,创建文件, 文件存在时,清空文件,并写入

    wb    非文字类文件的写入

    w+ 读写模式,因为在打开文件时,文件内容就被清空,如果此时进行读的话,读出来的是空白,所以这种方法没什么用

    3.追加

    a  追加模式, 适合文字类文件的追加, 文件不存在,创建文件, 文件存在时,就追加在文件的末尾

    ab  非文字类文件的追加,通常在图片,用于bytes类型

    a+ 追加读    和 w+ 读效果是一样的

    4.文件操作的其他方法

    read()  (上面已经提过)

    write()  

    close() 关闭文件

    seek()  ......设置标志位 seek(0, 2) 将标志位放到文件的末尾  以字节进行计算

    tell()      返回文件的当前标志位  字节计算

    readable()    判断是否可读

    writeable()    判断是否可写

    trucante()     进行截取, 读取的方式必须是可写方式,因此我们需要使用a+,或者 r+,不能使用w模式,因为一打开文件就被清除了

     

    5.小练习:

        1. 图片的复制

    #文件复制 #非文字文件类型的编码方式是字节类型
    f = open('美女1.jpg', mode='rb')  
    f1 = open('美女3.jpg', mode='wb')
    content = f.read()
    f1.write(content)
    f.close()
    f1.close()

         2. 文本文件的修改

    import os
    with open('文件操作3', encoding='utf-8', mode='r') as f, 
            open('新文件操作3', encoding='utf-8', mode='w') as f1:
        for line in f:
            line = line.replace('南方', '北方') #字符替换
            f1.write(line)
    
    os.remove('文件操作3') #删除原文件
    os.rename('新文件操作3', '文件操作3') #命名新文件为原文件

     

     

     

             

  • 相关阅读:
    [转]C#汉字转拼音的源码
    [转]C# DES 加密/解密类库,支持文件和中文/UNICODE字符,返回BASE64编码字符串
    48瓶子,48种性格
    “识谎”36计
    巧克力有益智商 经常吃可提高大脑计算能力
    调用方未由服务进行身份验证
    揭秘人体24小时使用手册
    [转]C#实现人民币金额小写转大写的代码
    转一篇绝对详细的手工构造PE文件教程
    bat 查找某个进程的ID号
  • 原文地址:https://www.cnblogs.com/my-love-is-python/p/9469121.html
Copyright © 2020-2023  润新知