我认为字符串中的“\x01”会被忽略,但我猜不会。我如何解决,以便按预期打印和使用?一串
谢谢
key_hash = {}
key_hash["ss:seconds:3\x01"] = "topic-1"
key_hash["ss:seconds:3\x02"] = "topic-2"
key_hash["ss:seconds:3\x03"] = "topic-3"
key_hash["ss:seconds:3\x04"] = "topic-4"
for key,topic in key_hash.items():
print(key,topic)
以下是输出:
ss:seconds:3 topic-1
ss:seconds:3 topic-2
ss:seconds:3 topic-3
ss:seconds:3 topic-4
但是我想要
ss:seconds:3\x01 topic-1
您遇到的问题是,文本包含一个无法打印的十六进制字母:
\x01
是一个字母(请参见ascii-code.com上的f.e)当您检查字符串长度时可以看到:
您可以(人为地)更改字符串以包含所有不可打印字符的十六进制表示形式,如下所示:
要输出:
然后你可以用它作为你口述的关键
它们不会被忽略,但终端会将所有4个控制字符显示为零宽度图示符。在我的终端上(强调
hexdump
输出中的控制字符):如果我是对的,你可以使用原始字符串
我得到的输出是
相关问题 更多 >
编程相关推荐