zoukankan      html  css  js  c++  java
  • 数据类型总结,and字符编码和文件处理

    数据类型总结

    按存储空间的占用分(从低到高)

    数字
    字符串
    集合:无序,即无序存索引相关信息
    元组:有序,需要存索引相关信息,不可变
    列表:有序,需要存索引相关信息,可变,需要处理数据的增删改
    字典:无序,需要存key与value映射的相关信息,可变,需要处理数据的增删改
    

    按存值个数区分

    标量/原子类型 数字,字符串
    容器类型 列表,元组,字典,集合

    按可变不可变区分

    可变 列表,字典
    不可变 数字,字符串,元组

    按访问顺序区分

    直接访问 数字,字符串
    顺序访问(序列类型) 字符串,列表,元组
    key值访问(映射类型) 字典

    今日内容

    字符编码***

    • 乱码问题:
      1、存的时候乱了:采用的字符编码表无法识别输入的字符
      存的时候就已经乱了,是无法补救的,取的时候一定也乱了
        解决方法:存入硬盘的编码格式应该用utf-8格式
    2、存的时候没有乱码:采用的字符编码表可以识别输入的字符
        但是取的时候乱码了:采用的字符编码表与当初存的时候用的不是同一张表
    
        解决方法:存的时候用什么编码,取的时候一定要用同样的编码格式
        与运行python程序有关的乱码问题:
    1、保证运行python程序的前两个阶段不乱码
            在python文件的开头加一行:
                #coding:文件存的时候用的编码格式
    2.python3 中不用注意,在python2中需要注意在字符串的前面加上u  表示用utf-8
    

    文件处理

    • 什么是文件

      文件是操作系统提供给用户/应用程序操作硬盘的一个虚拟单位
      
    • 为何要用文件

      存储硬盘,必须要使用文件。
      
    • 如何使用文件

      open(文件路径,打开模式) 打开

      应用程序/用户   文件对象/文件句柄  =============》遥控器
      
      操作系统            打开文件                   ===================》空调
      
      硬件                    硬盘                           ==========》       
      

    绝对路径前面加上r’…’

     D:python38Docpython383
     C:ac
    ew.txt
     
     file_path=r'C:ac
    ew.txt'
     file_path=r'/a/b/c/d.txt'
    

    相对路径

    在当前文件往下找

     cd.txt
     d.txt
    
    # 示范:
     r"D:python3liua.txt"
     f = open(r"liua.txt", mode='rt',encoding='utf-8')
     res=f.read()
     print(res)
     f.close()
    
    
    
     f = open(r"liua.txt", mode='rb')
     res=f.read()
      print(res,type(res))
     x=res.decode('utf-8')
     print(x)
     f.close()
    
    • .encode(‘编码格式’) 转换编码格式
    x='中国'
    res=x.encode('gbk')
    print(res)
    res1=x.encode('utf-8')
    print(res1)   转换完成以后类型是 bytes 类型
    
    #unicode格式的数字========>其他编码格式的数字
    #bytes 可以理解为一种硬盘的原生格式  (相当于二进制)
    
    • .decode
    x='中国'
    res=x.encode('gbk')
    print(res)
    res1=x.encode('utf-8')
    print(res1)   转换完成以后类型是 bytes 类型
    
    #其他编码格式的数字========>unicode格式的数字
    #
    
    
    • .open(打开)
    f=open(r"liua.txt", mode='rb')  地址+模式,(+编码类型)
    
    努力学习!
  • 相关阅读:
    chapter23:软件安装RPM,SRPM与YUM之(0)-软件管理器的简介
    chapter22:源码与Tarball之(3)-函数库的管理
    chapter22:源码与Tarball之(2)-Tarball的管理与安装
    Akamai在内容分发网络中的算法研究(翻译总结)
    常用机器性能评估工具
    利用神经网络编辑图片的调研
    Redis命令总结及其基础知识讲述
    MySQL主从复制与主主复制
    MySQL查询优化
    降低Redis内存占用
  • 原文地址:https://www.cnblogs.com/Orange-YXH/p/13648121.html
Copyright © 2011-2022 走看看