gpt4 book ai didi

python - 一个 unicode 字符串中有多少个可显示字符(日文/中文)

转载 作者:太空宇宙 更新时间:2023-11-04 06:55:24 27 4
gpt4 key购买 nike

我需要知道包含日文/中文字符的 unicode 字符串中有多少个可显示字符。

使问题变得非常明显的示例代码:

# -*- coding: UTF-8 -*-
str = '\xe7\x9d\xa1\xe7\x9c\xa0\xe6\x99\x82\xe9\x96\x93'
print len(str)

12

print str

sleep 时间<<<注意显示了四个字符

我如何从字符串中知道要显示 4 个字符?

最佳答案

这个字符串

str = '\xe7\x9d\xa1\xe7\x9c\xa0\xe6\x99\x82\xe9\x96\x93'

unicode 代码点 的编码表示。它包含字节,len(str) 返回您的字节数

您想知道,有多少个 unicode 代码包含该字符串。为此,您需要知道使用什么编码来对这些 un​​icode 代码进行编码。最流行的编码是 utf8。在 utf8 编码中,一个 unicode 代码点可以占用 1 到 6 个字节。但是你一定不记得了,只是解码字符串:

>>> str.decode('utf8')
u'\u7761\u7720\u6642\u9593'

在这里你可以看到 4 个 unicode 点。打印它,查看可打印版本:

>>> print str.decode('utf8')
睡眠時間

并获取 unicode 代码的数量:

>>> len(str.decode('utf8'))
4

更新:另请参阅 abarnert answer尊重所有可能的情况。

关于python - 一个 unicode 字符串中有多少个可显示字符(日文/中文),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25722049/

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