zoukankan      html  css  js  c++  java
  • python中的文件操作

    文件操作


    文件操作主要讲解以下内容

    • 文件本身的操作(python内置)
    • 系统中文件和文件夹的操作(os和shutil模块当中)
    • 系统路径相关操作(os模块中的子模块 os.path)
    • 文件压缩和解压缩(zip,tar模块)

    文件的基本操作


    open()

    功能:打开或者创建一个文件
    格式:open('文件路径','打开模式')
    返回值:文件io对象
    

    打开模式一共N种:

    • w模式 写模式write 文件不存在时会创建文件,如果文件已存在则会清空文件
    • r模式 读模式read 文件不存在就报错,存在则准备读取文件
    • a模式 追加模式 append 文件不存在则新建,文件存在则在文件末尾追加内容
    • x模式 抑或模式 xor 文件存在则报错,文件 不存在则新建文件
    • b模式 二进制模式 binary 辅助模式不能单独使用
    • +模式 增强模式plus 也是辅助模式不能单独使用

    以上模式可以互相组合:wrax不可以互相组合

    w,w+,wb,wb+,r,r+,rb,rb+,a,a+,ab,ab+,x,x+,xb,xb+

    read()

    功能:读取文件
    格式1:
        文件io对象.read()
        返回值:整个文件的字符
    

    格式2:
    文件io对象.read(字符长度)
    返回值:指定长度的字符

    write()

    功能:写入文件
    格式:文件io对象.write(字符串)
    返回值:写入字符串的长度
    

    close()

    功能:关闭文件
    格式:文件io对象.close()
    返回值:None
    

    读写函数


    read()

    功能:读取文件
    格式1:
        文件io对象.read()
        返回值:整个文件的字符
    

    格式2:
    文件io对象.read(字符长度)
    返回值:指定长度的字符

    readline()

    功能:读取一行文件
    格式1:
        文件io对象.readline()
        返回值:一行内容的字符串
    
    格式2:
        文件io对象.readline(字符长度)
        返回值:一行内容的字符串
    
    注意:字符长度<当前行内内容,则读取指定长度的字符串,并且下次再读取还是在这个一行中获取没有读取的内容。
    字符长度>=当前行内容,直接读取当前行
    

    readlines()

    功能:将文件中的内容读取到序列当中。
    格式1:
        文件io对象.readlines()
        返回值:列表
    
    格式2:
        文件io对象.readlines(字符长度)
        返回值:列表
    
    注意:读取的行数由字符长度决定,如果字符长度读取了N行后,还有指定长度的字符没有读取,则直接读取下一行进来
    

    write()

    功能:写入文件
    格式:文件io对象.write(字符串)
    返回值:写入字符串的长度
    

    writelines()

    功能:将序列写入文件中
    格式:文件io对象.writelines(序列)
    返回值:None
    

    truncate()

    功能:字符串截取操作
    格式:文件io对象.truncate(字节长度)
    返回值:截取的字节长度
    

    文件指针操作


    tell()

    功能:查看当前指针的位置
    格式:文件io对象.tell()
    返回值:整数
    

    seek()

    功能:调整指针的位置
    格式1:
        文件io对象.seek(N)  将指针直接调整到N的位置,从开头计算第N个位置
        返回值:指针的位置
    

    格式2:
    文件io对象.seek(偏移位置,参考点方式)
    返回值:指针的位置

    参考点方式:
    0 从文件的最开头计算偏移
    1 从文件的当前指针位置开始计算偏移(实验不通)
    2 从文件末尾开始计算偏移(实验不通)

    什么是字符,字节,字符集


    字符

    一个文字就是一个字符,无论一个汉字 还是一个英文字或者数字都是一个字符
    

    字节

    存储单位,文字存储的单位需要使用字节。
    

    1KB = 1024B
    1MB = 1024KB
    1GB = 1024MB
    ITB = 1024GB
    1PB = 1024TB

    字符集

    字符就是字符的编码类型。
    
    • ASCII码 美国专用

    • 每种语言单独一种编码格式,为了使得计算机能够操作某种语言,中文(GB2313,GB10300,GBK,BIG5...) GBK格式中一个汉字需要2个字节表示,拼音和数字依然是一个字节

    • 几乎所有语言都可以使用的字符集,utf类字符集,能够表示世界上绝大多数的文字。(utf-8) utf-8字符集表示汉字需要3个字节,表示拼音和数字还是1个字节

  • 相关阅读:
    万维网
    MySQL客户端输出窗口显示中文乱码问题解决办法
    mysql数据库delete数据时不支持表别名
    Java 实现在固定区间内随机生成整数
    【面试】MySQL 中NULL和空值的区别?
    一个因MySQL大小写敏感导致的问题
    windows查看服务的状态
    不就是Select Count语句吗,竟然能被面试官虐的体无完肤!
    Java 代码的精优化
    java服务宕机原因查询
  • 原文地址:https://www.cnblogs.com/victorfengming/p/11931046.html
Copyright © 2011-2022 走看看