我目前在python中有一个硬编码的查找表,如下所示:
lookup = {
"\x85": u'...', # ...
"\x91": u"'",
...
}
我想将映射移动到外部文件以使其更易于管理,但是无法找到存储x转义字符代码并将其重新读入的方法。而不是'\ x85',我最终得到'\ x85'。
有什么想法吗?
答案 0 :(得分:5)
如果您格式化文件:
{
"\x85": u'...',
"\x91": u"'"
}
然后您可以使用ast.literal_eval()
将查找表添加到您的程序中:
In [10]: ast.literal_eval(open('lookup.txt').read())
Out[10]: {'\x85': u'...', '\x91': u"'"}
如果您想使用自定义格式,您只需存储密钥的十六进制ASCII代码(例如85
,91
等),并在阅读时进行转换:
In [17]: chr(int('91', 16))
Out[17]: '\x91'