繁体   English   中英

KeyError:Python Dictionary Key中的反斜杠

[英]KeyError: Backslash in Python Dictionary Key

我正在尝试用Python从请求对象的.text中使用json.loads()创建的字典中检索值,该对象使用:

'\/' 

作为一些字典键中的分隔符。 字典是不受我控制的另一个程序的标准输出。

如果我尝试使用:

dictionary['text\/text']

它会生成一个KeyError,并表示没有

'text\\/text'

键。 注意它插入的双反斜杠。

我努力了:

r'text\/text', 'text\\/text', 'text'+chr(92)+chr(47)+'text', etc

我似乎无法让这个工作。 必须有一些方法来做到这一点,而不必解析整个字典的文本,并替换所有出现的'/'。 有任何想法吗?

编辑:这对我来说是一个愚蠢的错误。 我正在读取request.text中的键值,其中在正斜杠之前打印了一个额外的反斜杠。 Martijn Pieters的评论直接解决了这个问题。

我在Idle(2.7.6)中尝试过,它看起来有效:

>>> d={'text\/text':'test'}
>>> d
{'text\\/text': 'test'}
>>> d['text\/text']
'test'
>>> 

暂无
暂无

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

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