• 3.python文件操作


    文件操作模式

    读取文件

    文件内容

    床前明月光,疑是地上霜
    举头望明月,低头思故乡

    1.read()

    读取文件所有内容

    f = open('libai',encoding = 'utf-8')
    print(f.read())
    
    床前明月光,疑是地上霜
    举头望明月,低头思故乡

    2.readline()

    只读取一行内容

    f = open('libai',encoding = 'utf-8')
    
    print(f.readline())
    
    床前明月光,疑是地上霜

    3.readlines()

    把文章内容以换行符分割,并生成list格式(数据量大的时候不建议用)

    f = open('libai',encoding = 'utf-8')
    
    print(f.readlines())
    
    ['床前明月光,疑是地上霜
    ', '举头望明月,低头思故乡']

    4. seek和tell光标

    f = open('libai',encoding='utf-8')
    data = f.read()     #默认光标在起始的位置,read()读取完后,光标停留到文件末尾
    data2 = f.read()    #data2读取的内容为空
    print(data)
    print(data2)
    f.close()          #关闭文件

    文件

    abcdefg
    hyjklmn
    opqrstu
    vwxyz
    f = open('libai',encoding='utf-8')
    #tell获取当前的光标
    print(f.tell())    #0
    
    print(f.readline().strip())
    print(f.readline().strip())
    print(f.tell())
    f.seek(0)     #移动光标到文件起始的地方
    print(f.readline().strip())
    
    
    结果:
    0
    abcdefg
    hyjklmn
    18
    abcdefg

    5.flush刷新

    模拟进度条

    import sys,time
    
    for i in range(40):
        sys.stdout.write('#')
        sys.stdout.flush()     #flush强制舒心缓存到内存的数据写入硬盘
        time.sleep(0.1)

    6.with语句

    with代码块执行完后,文件会自动关闭

    with open('libai') as f:
        print(f.read())

    7.二进制读取“rb”

    #rb  二进制模式读取
    f = open('libai','rb')  #主要用于网络传输
    print(f.readline())

    b'xe5xbax8axe5x89x8dxe6x98x8exe6x9cx88xe5x85x89xefxbcx8cxe7x96x91xe6x98xafxe5x9cxb0xe4xb8x8axe9x9cx9c '

    8.二进制写“wb”

    f = open('libai','wb')
    f.write('中文'.encode())    

     编码转换

     方法

  • 相关阅读:
    从 0 开始带你成为消息中间件实战高手
    jenkins升级2.249版本后 节点(Node)配置的启动方式中没有Launch agent via Java Web Star
    Gradle build daemon disappeared unexpectedly (it may have been killed or may have crashed)
    centOS7 gradle版本升级
    使用PDB调试Python程序
    pytest在控制台的方式下提示找不到包
    docker-compose文件详解
    storm案例分析
    strom 简单案例
    springboot实现读写分离
  • 原文地址:https://www.cnblogs.com/derek1184405959/p/8042679.html
Copyright © 2020-2023  润新知