zoukankan      html  css  js  c++  java
  • day6 编码 文件

    字符对应数字的标准
    字符……(翻译过程)……数字
    ASCII 256字符
    gb2312 编码中国规定 包含中文数字对应---》GBK
    ASCII 1byte代表1个字符

    GBK:2个byte代表1个字符
    unicode 2个byte 生僻字4个字节
    UTF-8 英文1个 中文3个 生僻4——6 -----》包含ASCII

    第一代ASCII
    第二代GBK
    第三代 各国自己定义,乱码的原因就是编码不一样系统不兼容
    unicode 以空间换取可以转换任意编码
    UTF-8存放基于网络数据量最小提高稳定
    2位16进制=1个字节
    python3自动把输入的内容转换成unicode兼容性好 对应STR字符型

     

    保证不乱吗的核心就是:
    文件是以什么编码存的,就必须以该读取
    强调:我们能控制的只是存到硬盘上的编码

    python3解释器:默认utf-8编码
    python2解释器:默认ascii编码

    文件头的作用:#coding:utf-8 是告诉python解释器,用我指定的字符编码

     

     

    unicode---编码encode--->gbk
    gbk------->解码decode--->unicode


     文件

    默认的打开文件的编码是:当前操作系统默认的编码,win:gbk,linux:utf-8

    文件默认的打开模式是t模式:文本模式

    操作文件的模式有三种:r,w,a

    r:默认的打开模式,只读模式
    注意:当文件不存在时,报错

    with  open('aa.txt',mode='r',encoding = 'utf-8') as f:
    for i in f:
    print(i)
    以字符方式一行一行存I/O快


    f= open('aa.txt', mode='r', encoding='utf-8')
    print(f.read())
    print(f.readline())
    f.close()

     

    w:只写模式
    注意
    1、当文件存在时,清空
    2、当文件不存在时,创建空文档

    f= open('aa.txt',mode='w',encoding='utf-8')
    f.write('aaaaa bbbbb cccccc ')

    f.writelines(['aaa ','bbbb ','cccc '])
    f.close()

     

    a:只追加写模式

    注意:

    在文件不存在时,创建空文件
    在文件存在时,光标直接跑到文件末尾

    f = open('bb.txt',mode='a',encoding='utf-8')
    f.write('111 ''2222 ')
    f.close()

    f = open('bb.txt',mode='a',encoding='utf-8')
    f.writelines('aaa ')

    追加用于写日志
     

     

     

    
    

     

  • 相关阅读:
    linux curses函数库
    在Android library中不能使用switch-case语句访问资源ID的原因分析及解决方案
    Android Support ;v4、v7、v13的区别
    background-position
    java web 之 web.xml篇
    javaweb之Cookie篇
    Enumeration 接口
    Java Bad version number in .class file
    使用AppCan自带的升级功能实现移动端升级
    obj.offsetHeight与obj.style.height区别
  • 原文地址:https://www.cnblogs.com/lg04551/p/8624828.html
Copyright © 2011-2022 走看看