Python 如何使用混合的1字节和2字节符号访问字符串?

Python 如何使用混合的1字节和2字节符号访问字符串?,python,utf-8,cyrillic,Python,Utf 8,Cyrillic,我从UTF-8编码的文件中阅读测验的问题和答案,但答案可以由同一文本中的1字节符号(英语)和2字节符号(俄语)组成: "best car тайота"` 我需要将答案替换为“*”,这样看起来像“**********”,以帮助猜测答案是什么。用于确定我使用的长度 len(answer.decode('utf-8')) 但在下一个提示中,当我想显示一些符号,如“b*s*ca**а*cf***”,我可以通过应答[索引]访问1字节符号,但我不能以这种方式读取2字节符号,这就是为什么我得到没有2字节

我从UTF-8编码的文件中阅读测验的问题和答案,但答案可以由同一文本中的1字节符号(英语)和2字节符号(俄语)组成:

"best car тайота"`
我需要将答案替换为
“*”
,这样看起来像
“**********”
,以帮助猜测答案是什么。用于确定我使用的长度

len(answer.decode('utf-8'))
但在下一个提示中,当我想显示一些符号,如
“b*s*ca**а*cf***”
,我可以通过
应答[索引]
访问1字节符号,但我不能以这种方式读取2字节符号,这就是为什么我得到没有2字节符号的
“b*s*ca*”


有解决方案吗?

将字符串解码为Unicode值一次,然后用该值进行替换

unicode
string对象支持与字节字符串相同的操作;混合使用字节字符串和Unicode字符串时要小心,因为这可能会触发自动编码或解码(导致
unicodeincode
UnicodeDecode
错误)。打印字符串应自动对值进行编码,以匹配终端编解码器

您可能想了解Python和Unicode:

  • 内德·巴奇尔德

  • 乔尔斯波尔斯基


将字符串解码为Unicode值一次,然后替换该值

unicode
string对象支持与字节字符串相同的操作;混合使用字节字符串和Unicode字符串时要小心,因为这可能会触发自动编码或解码(导致
unicodeincode
UnicodeDecode
错误)。打印字符串应自动对值进行编码,以匹配终端编解码器

您可能想了解Python和Unicode:

  • 内德·巴奇尔德

  • 乔尔斯波尔斯基


将字符串解码为Unicode值一次,然后替换该值

unicode
string对象支持与字节字符串相同的操作;混合使用字节字符串和Unicode字符串时要小心,因为这可能会触发自动编码或解码(导致
unicodeincode
UnicodeDecode
错误)。打印字符串应自动对值进行编码,以匹配终端编解码器

您可能想了解Python和Unicode:

  • 内德·巴奇尔德

  • 乔尔斯波尔斯基


将字符串解码为Unicode值一次,然后替换该值

unicode
string对象支持与字节字符串相同的操作;混合使用字节字符串和Unicode字符串时要小心,因为这可能会触发自动编码或解码(导致
unicodeincode
UnicodeDecode
错误)。打印字符串应自动对值进行编码,以匹配终端编解码器

您可能想了解Python和Unicode:

  • 内德·巴奇尔德

  • 乔尔斯波尔斯基