【发布时间】:2015-03-24 20:40:48
【问题描述】:
我正在解析一些 xml(带有一些 python 3.4 代码)并且想要从节点及其 id 属性中检索文本。例子:
<li id="12345"> Some text here </li>
我当前的代码仅围绕文本构建(我现在添加了 id,但以前不需要它)。我正在遍历文本/句子列表,然后继续做一些事情。所以我想制作一个以文本/句子为键,以这个id属性为值的字典。
但是,这感觉不是很有效。文本可以是一个完整的段落,使键很长。而 id 的长度总是相当有限(但仍然是 str 类型,例如一些字母字符后跟一些数字)。 但是让 ids 成为 key 和 text 成为 value 需要对代码进行一些重写。一切都不是很成问题,但这只是让我想知道:与像“ulp_887362487687678”这样的 id 作为键相比,将文本(可能是整个段落)作为键有多低效?
我可以制作两个反向字典(一个以 id 为键,另一个以文本为键)并比较构造和查找等等。而且我还发现了一些关于密钥长度限制的主题 (Do Dictionaries have a key length limit?)。但我只是想知道你对此有何看法。在你的 dict 中有这么长的 str 键是你绝对想要避免的,还是不是什么大不了的事? 如果你能分享一些赞成/反对的意见,那就太好了!
【问题讨论】:
标签: python dictionary key