代码之家  ›  专栏  ›  技术社区  ›  MT-FreeHK

将所有单词保存为python源代码,包括标点符号

  •  0
  • MT-FreeHK  · 技术社区  · 6 年前

    和Python2.7一样,我可以将所有Unicode字符串保存到Python源代码中。

    在下面的代码中,

    #!/usr/bin/python
    #coding:utf-8
    a = u'我很好,你呢?'
    
    with open('test.txt', 'wb') as f:
        f.write(repr(a))
    

    我所期望的是给我一个文本和以下措辞

    U'\U6211\U5F88\U597D\U002C\U4F60\U5462\U003F'

    但事实证明是

    u'\u6211\u5f88\u597d,\u4f60\u5462?'

    为什么不处理标点符号?是否也可以处理标点符号?

    更新 : 尽管我将在注释中使用@blckknght advisement,因为使用其他编码对我来说仍然可以,但是我仍然愿意看看是否有关于将标点保存为python字符串的答案。谢谢。

    1 回复  |  直到 6 年前
        1
  •  2
  •   Mark Tolonen    6 年前

    repr()

    #coding:utf8
    
    def my_repr(s):
        return "u'" + ''.join(r'\u{:04x}'.format(ord(c)) for c in s) + "'"
    
    s = u'我很好,你呢?'
    print my_repr(s)
    

    u'\u6211\u5f88\u597d\u002c\u4f60\u5462\u003f'