使用 collections.Counter() 在 Python 程序中检查字谜


如果两个字符串的字符相同,即使顺序不同,则这两个字符串互为字谜。在本教程中,我们将使用collections.Counter()方法来检查 Python 中的字谜。

Input:
string_one = "cat"
string_two = "tac"
Ouput:
True

collections.Counter()

collection.Counter()返回一个字典,其中包含字符串中每个字符的频率。Counter对象具有不同的方法来查找最常见元素、唯一元素、计数等。

让我们看一个例子。

例子

# importing the collections module
import collections
# creating Counter object
counter = collections.Counter("Hafeez")
# printing the counter
print(counter)
# displaying most common character from the string
print("\nMost common character")
print(counter.most_common(1))

输出

如果您运行以上程序,您将得到以下结果。

Counter({'e': 2, 'H': 1, 'a': 1, 'f': 1, 'z': 1})
Most common character
[('e', 2)]

检查字谜的步骤。

算法

1. Initialise two strings.
2. Create collections.Counter() objects for both strings.
3. If both of the objects are equal.
   3.1. Print True
4. Else print False

让我们看一个例子。

例子

# importing the collections module
import collections
# initializing strings
string_one = "cat"
string_two = "atc"
# checking the Counter objects of both strings
if collections.Counter(string_one) == collections.Counter(string_two):
   # they are equal so, printing True
   print(True)
else:
   # they are not equal so, printing False
   print(False)

输出

如果您运行以上程序,您将得到以下结果。

True

结论

如果您在学习本教程时遇到任何问题,请在评论区指出。

已于以下时间更新: 04-11-2019

146 次浏览

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告