gpt4 book ai didi

Python:在编辑器中正确获取\\u00bd

转载 作者:太空宇宙 更新时间:2023-11-03 19:38:01 24 4
gpt4 key购买 nike

我想做以下事情:1)序列化我的类(class)2)还手动编辑序列化转储文件以删除我认为不必要的类的某些对象。

我目前正在使用 python 和 simplejson。如您所知,simplejson 将所有字符转换为 unicde。因此,当我使用 simplejson 转储特定对象时,unicode 字符会变成“好”的“\u00bd”。

为了方便起见,我有兴趣手动编辑 simplejson 文件。这里有人知道我可以做到这一点的解决办法吗?

我对此序列化格式的要求:1)易于使用(只需转储和加载 - 完成)2)允许我手动编辑它们,没有太多麻烦。3) 能够显示汉字

我用的是vim。有谁知道在vim中将“\u00bd”转换为好的方法吗?

最佳答案

我对 simplejson 或问题的序列化部分一无所知,但您询问了如何在 Vim 中将“\u00bd”转换为 好。以下是一些使用 unicode 的 vim 技巧:

  • 您需要在 vim 中设置正确的编码,请参阅:

    :help 'encoding'
    :help 'fileencoding'
  • 按数字输入 unicode 字符只需进入插入模式,按 Ctrl-V,然后输入 u后跟四位数字(或 U 后跟八位数字)。请参阅:

    :help i_CTRL-V_digit
  • 另请记住,为了使该字符在 Vim 中正确显示,您需要包含该字符的固定宽度字体。它在 Envy Code R 中显示为一个广阔的空间。以及 Lucida Console、Consolas 和 Courier New 中的各种盒子。

  • 替换\uXXXX带有 unicode 字符 XXXX (其中 X 是任何十六进制数字),在正常模式下键入此内容(其中 <ENTER> 表示按 ENTER 键,不要逐字键入):

    :%s/\\u\x\{4\}/\=eval('"' . submatch(0) . '"')/g<ENTER>

但请注意,u00bd 似乎是 unicode 字符 ½(如果该字符在屏幕上无法正确显示,则为 1/2),而不是您提到的好字符(我认为是 u597D)。请参阅this unicode table 。启动 vim 并输入这些字符(其中 <Ctrl-V> 是通过按住 CTRL ,按 V ,释放 V 然后释放 CTRL 生成的):

    i<Ctrl-V>u00bd

假设您的字体支持该字符,您应该会看到一个看起来像 1/2 的小字符。

关于Python:在编辑器中正确获取\\u00bd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2400088/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com