力扣 290 字母的是否符合规律规律




#
规律 aabb ;单词 cat cat dog dog ;符合规律 返回true。 def wordPattern(规律: str, 给定字符串: str) : res=给定字符串.split() return list(map(规律.index, 规律))==list(map(res.index,res)) #验证 result=wordPattern("aabb", "cat cat dog dog gg") print(f"符合规律吗:{result}")

 

# 规律 aabb  ;单词 cat cat dog dog ;符合规律 返回true。
def  获得字典_key字母_value重复次数(string):
    截取后的字母列表 = string.split()
    print(截取后的字母列表)
    # 初始化一个字典 获得比如{“a”:3;”b“:2}
    字典_key字母_value重复次数 = {}
    for item in 截取后的字母列表:
        if item in 字典_key字母_value重复次数:
            字典_key字母_value重复次数[item] += 1
        else:
            字典_key字母_value重复次数[item] = 1
    return 字典_key字母_value重复次数

#对比两个字典中的value是否相等
规律的字典中value的集合 = list(获得字典_key字母_value重复次数("a a").values())
print(规律的字典中value的集合)
字符串的字典中value的集合 = list(获得字典_key字母_value重复次数("cat dog").values())
print(字符串的字典中value的集合)

result=(规律的字典中value的集合==字符串的字典中value的集合)
print(f"符合规律吗:{result}")

 

# 将aabb转为["a","a","b","b"]
str1 = "aabb"
result1=[str for str in str1]
print(result1)# ['a', 'a', 'b', 'b']
str2="cat cat dog dogg"
result2=str2.split(" ")
print(result2)# ['cat', 'cat', 'dog', 'dogg']
# 获取list中元素出现第一次的下标
# 如果符合规律   输出True 否则 False
result3=list(map(lambda x:result1.index(x),result1))==list(map(lambda x:result2.index(x),result2))

print(result3)# False

 

posted @ 2023-07-01 22:21  胖豆芽  阅读(4)  评论(0编辑  收藏  举报