快速字符串或JSON查找数据结构

时间:2014-11-12 21:56:11

标签: python json performance dictionary

如果我有大量的字符串,那么查找它们并获取值的最快方法是字典吗?当我的意思是巨大的,我的意思是潜在的2000个字符串,每个长度为500(JSON)。

dict1 = {"JSON1": "JSON1", "JSON2": "JSON2", "JSON3": "JSON3", ... }

所以,让我们说我想看看JSON2是否在dict1dict1["JSON2"]JSON2dict1存在{{1}}的最快方式吗?请记住,我正在处理大量代表JSON的数据和冗长的字符串。

3 个答案:

答案 0 :(得分:3)

使用词典。除非你的RAM耗尽,否则它可能是你正在寻找的解决方案。

答案 1 :(得分:2)

如果你只想测试会员资格,那么也许你想要一套呢?

data = set(["JSON1", "JSON1", "JSON2"])

给你一套

{"JSON1", "JSON2"}

然后

"JSON2" in data
True

答案 2 :(得分:2)

在您的示例中,键和值都是相同的字符串。

如果您只是想检查状态,则无需浪费对密钥的引用。在这种情况下,您可以使用一组。

否则,RAM中的dict是你用Python获得的最好的。如果你有比RAM大的东西(听起来不像它),那就是ZODB或者是一个完整的数据库。