【问题标题】:Making dictionary item frequency制作字典项目频率
【发布时间】:2023-01-12 18:02:13
【问题描述】:

我想知道为什么它不计算元素? 我制作了一把钥匙,然后在每次迭代中它应该增加价值。

def isAnagram( s, t):
    if len(s) != len(t):
        return False 
    d_1 = {}
    d_2 = {}
    for i in range(len(s)):
        d_1[s[i]] =+ 1
        d_2[t[i]] =+ 1
    print(d_1)
    print(d_2)
    return True if d_1 == d_2 else False  

s = 'aabb'
t = 'bbaa'
print(isAnagram(s,t))

OUTPUT : 
d_1 = {'a': 1, 'b': 1}
d_2 = {'b': 1, 'a': 1}

【问题讨论】:

  • 你得到的输出是什么?
  • d_1 = {'a': 1, 'b': 1} d_2 = {'b': 1, 'a': 1}
  • 你写的是 =+ 而不是 += ;仅仅修复它是不够的,因为如果 a 不存在,a += 1 将引发错误。您必须测试密钥是否已经存在。
  • 成功了,非常感谢。但是对口译员来说意义有什么不同呢?
  • = +1 表示您将正数放入地图中,+= 1 表示您将其中的值加一。

标签: python


【解决方案1】:

不要重新发明轮子!

from collections import Counter

def isAnagram(s, t):
    return Counter(s) == Counter(t)

s = "aabb"
t = "bbaa"

print(isAnagram(s,t)) # => True

【讨论】:

  • 伟大的 !谢谢
  • 如果我的回答对你有帮助,请考虑采纳。谢谢! =)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-23
  • 1970-01-01
  • 1970-01-01
  • 2018-08-14
  • 2016-04-15
相关资源
最近更新 更多