比较字典(Python)

时间:2017-02-12 16:26:18

标签: python

我试图创建一个程序来比较两个字符串'字符。我试图让第二个字符串必须与第一个字符串具有相同的字符。

因此,如果第一个字符串为"Hello"而第二个字符串为"Helloo",则结果为false,但如果第二个字符串为"ello"则为真。

我在自己的字典中有两个字符串,用于计算每个字符的数量。我试图这样做:

if Dictionary1 >= Dictionary2 :
        print('True')

我不知道我是否以错误的方式思考这个问题,但我无法让这个工作。我还是比较新的Python,所以如果可能的话,请保持解释简单。谢谢!

2 个答案:

答案 0 :(得分:1)

使用allcollections.Counter这是计算dict的高性能替代方案:

> from collections import Counter

> string_1 = 'hello'
> string_2 = 'ello'
> c1, c2  = map(Counter, (string_1, string_2))
# c1, c2  = Counter(string_1), Counter(string_2)
> all(c1[c] >= c2[c] for c in c2)
True

您必须确保string_2中的每封信件中string_1中此字母的数量大于或等于string_2中的数量。您不能只通过>=

比较两个词典

答案 1 :(得分:-1)

>>> str1 = "Hello"
>>> str2 = "ello"
>>> print (str2 in str1)
True
>>> print (str1 in str2)
False