zoukankan      html  css  js  c++  java
  • Python(三)-文件处理

    版权声明:


    本文作者为—陈鑫

    本文的所有内容均来陈鑫总结,未经本人许可,禁止私自转发及使用。

    QQ: 499741233

    E-mail: 499741233@qq.com


    Python文件处理

    文件句柄 = file ('文件路径', '模式')

    注:Python中打开文件有两种方式,open(...)和file(...) 本质上前者在内部会调用后者来进行文件操作,推荐使用open。

    第1章 打开文件

    打开文件模式有:

    f = open('db','r')  # 只读模式,{默认}
    
    f = open('db','w')  # 只写模式,{不可读;不存在则创建;存在则删除内容;}
    
    f = open('db','a')  # 追加模式,{可读;不存在则创建;存在则只追加内容;}
    
    f = open('db','x')  # 文件存在,则报错;不存在,则创建并写内容
    View Code

    "+"表示可以同时读写某个文件:

    f = open('db','r+')  # 可读写文件,{可读;可写;可追加}
    
    f = open('db','w+')  # 写读。
    
    f = open('db','a+')  # 同a。
    View Code

    "U"表示在读取时,可以将 自动转换成 (与r或r+模式同使用)

    f = open('db','rU')
    
    f = open('db','r+U')
    View Code

    "b"表示处理二进制文件(如ftp上传ISO镜像,Linux忽略,windows处理二进制文件时需标注)

    f = open('db','rb')  # 二进制只读
    
    f = open('db','wb')  # 二进制只写
    
    f = open('db','ab')  # 二进制追加
    
    
    f = open('db','r')
    
    data = f.read()
    
    print(data,type(data))
    
    f.close()
    View Code

    第2章 操作文件

    f = open('db','r+',encoding="utf-8")
    
    data = f.read(1) # 如果打开模式无b,则read,按照字符读取
    
    print(f.tell())  # tell当前指针所在的位置(字节)
    
    f.seek(f.tell()) # 调整当前指着你的位置(字节)
    
    f.write("777")   # 当前指针位置开始覆盖
    
    print(data)      # 打印输出
    
    f.close()        # 关闭当前文件

    通过源码查看功能

    read()      # 无参数,读全部;有参数,b字节,无b按字符
    
    tell()      # 获取当前指针位置(字节)
    
    seek()      # 指针跳转到指定位置(字节)
    
    write()     # 写数据,b:字节,无b:字符
    
    close()     # 关闭文件
    
    fileno()    # 文件描述符
    
    flush()     # 刷新文件内部缓冲区
    
    readline()  # 仅读取一行
    
    truncate()  # 截取,指针位置后的清空

    第3章 for循环文件对象

    f = open(“”)
    
    for line in f:
    
        print(line)

    第4章 文件修改

    # db文件里面有"xuliangwei"字符串
    
     
    
    f = open("db","r",encoding="utf-8")
    
    f_new = open("db.bak","w",encoding="utf-8")
    
     
    
    for line in f:
    
        if "xuliangwei" in line:
    
            line = line.replace("xuliangwei","xuliangwei.com")
    
        f_new.write(line)
    
    f.close()
    
    f_new.close()

    第5章 关闭文件

    f.close()  #直接close文件
    
     
    
    避免打开文件后忘记关闭,统一通过管理上下文,即:
    
    with open('db1','r') as f1, open("db2",'w' )as f2:
  • 相关阅读:
    spring使用JdbcDaoSupport中封装的JdbcTemplate进行query
    javascript正则表达式
    Hi java新特性
    jdk 1.5
    jdk 1.6 & 1.7新特性
    core java 10~12(多线程 & I/O & Network网络编程)
    core java 8~9(GUI & AWT事件处理机制)
    core java 7 exception
    core java 5~6(OOP & 高级语言特征)
    响应式布局样例
  • 原文地址:https://www.cnblogs.com/cxcx/p/6047834.html
Copyright © 2011-2022 走看看