设为首页收藏本站
查看: 56|回复: 0

[PHP] python-文件操作

[复制链接]

论坛元老

Rank: 6Rank: 6

积分
34274
主题
17031
UID
1347
M币
67
贡献
17176

  • 发表于 2017-5-14 02:44:00 | 显示全部楼层 |阅读模式
    1、文件打开
    打开模式:
    f = open('test.txt','r')
    #r,只读模式,文件不存在时,报错
    f = open('test.txt','w')
    #w,只写模式,文件不存在时,创建文件,文件存在时,清空原文件
    f = open('test.txt','x')
    #x,python3新增的模式,当文件存在时报错,文件不存在时,创建文件并写入
    f = open('test.txt','a')
    #a,追加模式,文件不存在时,创建文件
    编码格式:
    上述打开模式,默认的encoding='utf-8',当打开文件出现乱码时,可能是由于编码格式不一致导致的
    此时,可以通过调整编码格式进行文件读取
    f=open('test.txt','r',encoding='utf-8')
    f=open('test.txt','r',encoding='gbk')
    bytes模式:
    当使用b参数时,文件将通过字节方式打开,而不适用b参数时,文件将以字符方式打开
    f=open('test.txt','wb')
    f.write(b'\xe7\xbb\xbf\xe8\x8c\xb6')
    f.close()
    =>以字节方式写入test.txt
    n = open('test.txt','r',encoding='utf-8')
    t = n.read()
    print (t)
    => 没有b参数,以字符方式读取文件,显示为绿茶

    2、文件操作
    f=open('test.txt','r',encoding='utf-8')
    f.seek()
    =>移动当前指针位置到指定的位置,当打开模式中,没有b参数时,是按照字符位置移动,当以b参数打开时,是按照字节位置移动指针
    f.tell()
    =>获取当前指针的字节位置,与打开模式无关
    f.flush()
    =>强刷,一般对文件进行写入或者修改操作时,是先缓存,待文件关闭时再写入文件,使用该函数时,直接将修改内容写入文件
    f.fileno
    =>文件描述符
    f.truncate()
    =>将当前指针位置之后的内容全部截断

    3、文件关闭
    方式一:
    f=open('test.txt','r',encoding='utf-8')
    n = f.read()
    f.close()
    方式二:
    with open('test.txt','r',encoding='utf-8') as f:
    n =f.read()
    使用with时,会自动进行文件的close操作
    并且,使用with可以同时打开2个文件:
    with open('test1.txt','r',encoding='utf-8') as f, open('test2.txt','w',encoding='utf-8') as h:
    data = f.read()
    h.write(data)
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    在我站开通SVIP可同时获得17个站点VIP资源 立即登录 立即注册
    快速回复 返回顶部 返回列表