Python 如何使用混合的1字节和2字节符号访问字符串?
我从UTF-8编码的文件中阅读测验的问题和答案,但答案可以由同一文本中的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字节
"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
string对象支持与字节字符串相同的操作;混合使用字节字符串和Unicode字符串时要小心,因为这可能会触发自动编码或解码(导致unicodeincode
或UnicodeDecode
错误)。打印字符串应自动对值进行编码,以匹配终端编解码器
您可能想了解Python和Unicode:
- 内德·巴奇尔德
- 乔尔斯波尔斯基
unicode
string对象支持与字节字符串相同的操作;混合使用字节字符串和Unicode字符串时要小心,因为这可能会触发自动编码或解码(导致unicodeincode
或UnicodeDecode
错误)。打印字符串应自动对值进行编码,以匹配终端编解码器
您可能想了解Python和Unicode:
- 内德·巴奇尔德
- 乔尔斯波尔斯基
unicode
string对象支持与字节字符串相同的操作;混合使用字节字符串和Unicode字符串时要小心,因为这可能会触发自动编码或解码(导致unicodeincode
或UnicodeDecode
错误)。打印字符串应自动对值进行编码,以匹配终端编解码器
您可能想了解Python和Unicode:
- 内德·巴奇尔德
- 乔尔斯波尔斯基