py_pattern_tracker · Python

▶ Aprender py_pattern_tracker (Python) paso a paso · explicación de py_pattern_tracker

Código línea a línea

Tres columnas: el código, el trozo del subject o del main que obliga a escribir esa línea, y el por qué.

py_pattern_tracker.py
CódigoSubjectPor qué
def pattern_tracker(text: str) -> int:def pattern_tracker(text: str) -> int:Firma del subject.
count = 0counts the number of valid consecutive digit pairsContador.
for a, b in zip(text, text[1:]):two adjacent digitszip(text, text[1:]) da cada carácter con el siguiente: todas las parejas adyacentes sin manejar índices.
if a.isdigit() and b.isdigit() and int(b) - int(a) == 1:the second digit is exactly one greater than the first. A 9 followed by a 0 is NOT a valid pair.Los dos son dígitos y el segundo es el primero más uno. Con int el 9→0 da -9, no 1: queda excluido solo.
count += 1Pareja válida.
return countpattern_tracker("1a2b3c4") => 0Las letras entre medias rompen la adyacencia: zip nunca empareja 1 con 2 si hay una a entre ellos.