import difflib
def all_blocks(a, b):
ap, bp = 0, 0
for ai, bi, size in difflib.SequenceMatcher(a=a, b=b).get_matching_blocks():
yield a[ap:ai], b[bp:bi]
yield a[ai:ai + size], b[bi: bi + size]
for a_delta, b_delta in all_blocks('foo baz', 'bar baz'):
print(f'{a_delta!r}, {b_delta!r}')