zoukankan      html  css  js  c++  java
  • Python--字符串

    @、字符串中的特殊编码转码

    import html
    from urllib import parse
    
    
    def test_unicode():
        # data = r'{"status":-5,"msg":"u7528u6237u540du6216u5bc6u7801u9519u8befuff0cu8fd8u52696u6b21u673au4f1auff0cu5982u5fd8u8bb0u5bc6u7801u8054u7cfbu5ba2u670du5904u7406","data":[]}'
        # 下面字符串内容是:用户名或密码错误,还剩6次机会,如忘记密码联系客服处理
        data = r'u7528u6237u540du6216u5bc6u7801u9519u8befuff0cu8fd8u52696u6b21u673au4f1auff0cu5982u5fd8u8bb0u5bc6u7801u8054u7cfbu5ba2u670du5904u7406'
        # 如果是一个json格式的字符串,可以用json.loads
        # print(json.loads(data))
        print(data.encode().decode("unicode_escape"))
    
    
    def test_unescape():
        data = "<title>&#20135;&#21697;&#30331;&#35760;&#20449;&#24687;</title>"
        source = html.unescape(data)
        print(source)
        print(html.escape(source))
        ''' 输出结果
            <title>产品登记信息</title>
            &lt;title&gt;产品登记信息&lt;/title&gt;
        '''
    
    
    def test_quote():
        data = "你好"
        sign = parse.quote(data)
        print(sign)
        print(parse.unquote(sign))
        ''' 输出结果
            %E4%BD%A0%E5%A5%BD
            你好
        '''
    
    
    test_unicode()
    test_unescape()
    test_quote()
    
    ''' 输出结果
    用户名或密码错误,还剩6次机会,如忘记密码联系客服处理
    <title>产品登记信息</title>
    &lt;title&gt;产品登记信息&lt;/title&gt;
    %E4%BD%A0%E5%A5%BD
    你好
    '''
    View Code

     @、关于&#开头的编码说明

    原文:https://blog.csdn.net/zt3032/article/details/80850381

    关键词:NCR(numeric character reference, 数字字符引用)

    有了数字字符引用,就可以在网页中显示Unicode字符了,不用考虑html文件本身的编码,因为数字字符引用只用到ASCII字符集里的字符。所以,即使在gb2312编码的网页中,也可以用NCR显示埃及的象形文字了。

    NCR编码是由一个与号(&)跟着一个井号(#), 然后跟着这个字符的Unicode编码值, 最后跟着一个分号组成的, 如:
        &#nnnn; 或者 &#xhhhh;
    其中, nnnn是字符编码的十进制表示, 而hhhh是字符的16进制表示.
    另外要注意的是x在xml中必须是小写的.而hhhh可以大小写混用, 另外nnnn和hhhh也可以有前导零。
     
  • 相关阅读:
    C++中pair的用法
    DFS例题:力扣200:岛屿数量
    DFS例题:力扣695:岛屿的最大面积
    DFS深度优先遍历
    java AQS源码分析
    spring实现事务原理
    java常见并发面试题目+示例代码
    java并发锁
    ThreadPoolExecutor
    线程通信
  • 原文地址:https://www.cnblogs.com/yarightok/p/15337742.html
Copyright © 2011-2022 走看看