繁体   English   中英

我如何让 xx="$£A" 成为一个 3 个字符的字符串

[英]How do I get xx="$£A" to be a 3 character string

我正在使用 Python 2.7

如果我将一个变量设置为 xx = '$£A',我会得到一个 4 字节的字符串。 这是因为 £ 字符的值 > 127。在我的脚本中,第一行是:

编码=latin_1

然后再往下我试过: xx = bytearray(B'$£A').decode('latin_1') 如果我打印 str(len(xx)),我得到值 4。

我所需要的只是包含三个字节的字节数组,$ 的 ascii 值,£ 的 163=ANSI Latin_1 和 A 的 ascii 值。

我将不胜感激任何帮助。 谢谢

在字符串常量中使用超过 128 个未转义的字符是危险的,除非:

  • 您的脚本中有一行# coding=xxx作为第一行或第二行
  • 您的编辑器使用声明的编码

推荐的方法是逃避它们:

xx = b'$\xa3A'

(以上将在 Python 2 中给出正确的 latin1 字符串或在 Python 3 中给出正确的 latin1 编码字节,无论本地编码是什么)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM