zoukankan      html  css  js  c++  java
  • 5 python--文件处理

    一、文件操作

    #打开文件需要几步
    #1.open 打开文件
    f=open('1.txt','r',encoding='utf-8')
    #2.文件操作(读或写),通过句柄对文件进行操作  文件句柄 = open('文件路径', '模式')
    file=f.read()
    #3.关闭文件
    f.close()

    二、读取文件

    f=open(filename,mode,encoding)

    # filename:表示文件名

    # mode:表示打开文件的格式

    # encoding:表示打开的编码格式

    import codecs
    f=codecs.open('1.txt')   
    text=f.read()
    print(type(text))
    result=text.replace('1','A')
    print(result)
    # print(f.read())
    print(dir(f))
    f.close()
    View Code

    #codecs模块只在python2中有,python3中直接包含在了open函数内(无需导入模块)

    三、文件打开模式

    常用文件打开的模式:

    r:只读打开,文件的默认打开方式  
    w:文件不存在会创建,存在的话,会覆盖源文件(非追加)  
    a:只追加模式打开(不能读)  
    r+: 读写模式(写是追加) --->常用  
    a+: 追加读写  
    w+:写读模式(写同样是追加) ---->不常用  
    rb:二进制读模式(一般用来做网络传输数据的时候,因为网络传输都是基于二进制格式的,所以必须用b) python 2.x 是可以用str传输的  
    r+b:以二进制读写模式打开  
    w+b:以二进制写读模式打开  
    a+b:以二进制追加及读模式打开  
    b:使用二进制模式(特殊文件需要用文本模式传输的话,建议使用b)

    编码转换

    f = open('test.txt','rb')
    f.write('你好'.encoding())
    通过encoding就可以转换成二进制

    文件的内置方法(python3)

    fd.closed():判断文件是否被关闭,若被打开提示False,没有的话提示True
    fd.flush():把修改的内容,强制刷新到文件中去
    fd.isatty:判断是否是一个终端文件
    fd.mode:查看文件的打开模式
    fd.name:查看文件的名称
    fd.next:迭代的方法,和readline很像,区别是,next读到末尾会报错,readline会继续返回空
    fd.read:一次性读取所有内容,以字符串的方式存取
    fd.readable():判断文件是否可读
    fd.readlines:一次性读取所有内容,以列表的方式存取(适合操作小文件)
    fd.readline():每次读取一行内容
    fd.seek(0):调整文件读取的指针位置
    fd.seekable():判断文件是否可以调整指针位置(tty,磁盘等文件是不能被seek的),可以被seek则返回真,否则返回假 --Python3.x
    fd.tell():查询文件目前读取位置(以字符为单位)
    fd.truncate():截取文件,从开头开始截取,不指定指针位置的话,那么会清空文件
    fd.write:把一个字符串写入到文件中去
    fd.writelines():把字符串列表写入文件中
    fd.xreadlines():读一行打印一行,针对大文件非常适用 -----> Python 2.x 中适用,3.x中已经取消
    fd.encoding:查看文件的编码
    fd.writeable():判断文件是否可以写
    fd.fileno(): 返回文件在操作系统上的文件描述符(默认会打开三个:0表示 stdin、1表示 stdout,2表示stderr)
    fd.name:文件名称 
    View Code


    f = open('test.txt','rb')
    f.write('你好'.encoding())
    通过encoding就可以转换成二进制
  • 相关阅读:
    Linux 命令集合
    vsftpd 创建虚拟用户
    Java Web Socket
    Linux 命令集合
    YII 1.0 上传文件
    YII 1.0 扩展第三方类
    YII 1.0 发表文章用到的小物件
    YII 1.0 增删改查
    mysql 日志
    YII 1.0 小功能总结
  • 原文地址:https://www.cnblogs.com/the-way-to-bifk/p/7760027.html
Copyright © 2011-2022 走看看