A string is happy if every three consecutive characters are distinct.
def check_if_string_is_happy1(input_str):
check = []
for a,b,c in zip(input_str,input_str[1:],input_str[2:]):
if a == b or b == c or a == c:
check.append(False)
else:
check.append(True)
return all(check)
def check_if_string_is_happy2(input_str):
return not any(
a == b or a == c or b == c
for a ,b,c in zip(input_str,input_str[1:],input_str[2:])
)
zip()
將可迭代的物件作為引數,將物件中對應的元素打包成一個個元組,然後返回由這些元組組成的列表。
any()
用於判斷給定的可迭代引數 iterable 是否全部為 False,則返回 False,如果有一個為 True,則返回 True。
all()
用於判斷給定的可迭代引數 iterable 中的所有元素是否都為 TRUE,如果是返回 True,否則返回 False。