问题
is_match:
(str, str) -> bool
第一个参数是拼图,第二个参数是视图。如果视图可能是给定拼图的视图,则返回 True。
我的答案
我想出了这个:
def is_match(puzzle, view):
if len(puzzle) != len(view):
return False
if len(puzzle) == len(view):
return True
我也在网上找到了这个:
def is_match(given_puzzle, view):
if len(given_puzzle) != len(view):
return False
unique_letters = set(ch for ch in view if ch != '^')
for (a, b) in zip(given_puzzle, view):
if a in unique_letters and a != b:
return False
return True
我遇到的这个问题是,如果我输入:
is_match('blah', 'tr^^')
对于两个给定的代码,它将返回 True。这一定是错误的,因为字符甚至不匹配字符串的长度,我该怎么做才能解决这个问题?