The logic. It can be done by exporting the field using TableToNumPyArray and proceeding from there, but at least the sequence of events is here for someone wanting to make a field calculation from it.
# -- putting some sequences together
a0 = np.arange(5); a1 = np.arange(6, 11); a2 = np.arange(13, 20)
a = np.concatenate((a0, a1, a2))
a # -- note 5, 11, 12 are missing
array([ 0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19])
#
# -- calculate the sequential difference in the array/list/column and
# identify where they are
diff = a[1:] - a[:-1]
whr = np.where(diff != 1)
diff
array([1, 1, 1, 1, 2, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1])
#
# -- note the start and end values determined from the position and difference
st = a[whr[0]] # -- start of the mis-sequence
array([ 4, 10])
en = st + diff[whr[0]] # -- end determined from start and numeric difference
en
array([ 6, 13])
# -- piece the sequences together
m = [np.arange(st[i] + 1, en[i]) for i in range(st.size)]
m = [np.arange(st[i] + 1, en[i]) for i in range(st.size)]
np.concatenate(m)
array([ 5, 11, 12])
... sort of retired...