zoukankan      html  css  js  c++  java
  • [python IO学习篇]补充打开中文路径的文件

    http://blog.csdn.net/mottolinux/article/details/52560062
    1 关于Python编码的基本常识 在python里面 “明文”是unicode类型和str , “密文”是其他的编码格式 如gbk utf
    -8 latin-1等等 编码: “明文”->”密文” .encode([目标编码格式]) 对象必须为unicode类型 解码: “密文”->”明文” .decode([源编码格式]) 对象为str类型 对于汉字 一共有三大类编码方式 以中文汉字”李”为例子 a. unicode类 机器码 x67x4e unicode(python表示) u674e HTML Entity &#x674E UTF-16(BE) 0x674E UTF-32(BE) 0x0000674E b. UTF-8类 机器码 xe6x9dx8e UTF-8(python表示) xe6x9dx8e URL Escape Code %E6%9D%8E Octal Escape Sequence 346235216 c. gb类 机器码 xc0xee gb2312 gbk gb18030 xc0xee
    2 设置 .py文件上的中文编码格式
        
        (1)py文件内容上出现字符串上的中文
        (2)包括前面带u的(转换成unicode格式的字符串) 首先也是根据设置的文件编码格式读取字符串文字量 再作unicode的转换
        (3)如果添加了#coding=utf-8,则将中文按utf-8转成unicode
        (4)如果没有添加#coding=utf-8,则按系统默认的编码格式
        (5)系统的默认编码,获取代码:
                sys.getdefaultencoding()
    
    3 如何设置.py文件的编码格式:
        (1)#coding=<encoding>
        
        (2)<encoding>根据编辑器不同而不同
                sublime 编辑器默认是utf-8
                win7自带的操作系统:asciii /gbk--要读取中文,要gbk
                可以另存为:utf-8
    4 win7文件名是中文或者文件夹是中文
        (1)都是gbk编码
        (2)读写文件时,必须open(.....encode('gbk'),'r')
    5 win7文件上的内容包含中文
        (1)和4的不一样
        (2)文件的内容要根据编码的格式(记事本可能另存为)
        (3)建议编码成utf-8,sublime打开不需要转换
    6 爬虫结果的存储
        (1)现在的网页基本都是UTF-8编码(HTML5默认编码)
        (2)经过BeautifulSoup处理后的HTML元素内容 类型为NavigableString
        (3)可以直接print 由第3点可推断出 NavigableString底层类型为unicode
        (4)经过.replace()方法后可转换为unicode类型
    
    7 不提倡
        (1)不使用sys.setdefaultencoding(‘utf-8’)解决编码问题 
    8 其他
        (1)字符串中间处理过程全部转化为unicode处理 只在数据的入口和出口作相应的.decode()和.encode()处理
  • 相关阅读:
    Working with macro signatures
    Reset and Clear Recent Items and Frequent Places in Windows 10
    git分支演示
    The current .NET SDK does not support targeting .NET Core 2.1. Either target .NET Core 2.0 or lower, or use a version of the .NET SDK that supports .NET Core 2.1.
    Build website project by roslyn through devenv.com
    Configure environment variables for different tools in jenkins
    NUnit Console Command Line
    Code Coverage and Unit Test in SonarQube
    头脑王者 物理化学生物
    头脑王者 常识,饮食
  • 原文地址:https://www.cnblogs.com/liuzhipenglove/p/7044166.html
Copyright © 2011-2022 走看看