If all equal numbers located in one place you can do:
import numpy as np
a = np.array([[ 0, 935],
[ 0, 331],
[ 0, 322],
[ 1, 339],
[ 1, 773],
[ 2, 124],
[ 2, 340],
[ 3, 810],
[ 5, 936],
[ 5, 252],])
print(np.array_split(a, np.flatnonzero(np.diff(a[:, 0])) + 1))
# [array([[ 0, 935],
# [ 0, 331],
# [ 0, 322]]), array([[ 1, 339],
# [ 1, 773]]), array([[ 2, 124],
# [ 2, 340]]), array([[ 3, 810]]), array([[ 5, 936],
# [ 5, 252]])]
otherwise you can first sort array:
import numpy as np
a = np.array([[ 0, 935],
[ 5, 936],
[ 2, 124],
[ 2, 340],
[ 5, 252],])
a.sort(axis=0)
print(*np.array_split(a, np.flatnonzero(np.diff(a[:, 0])) + 1), sep="\n")
# [[ 0 124]]
# [[ 2 252]
# [ 2 340]]
# [[ 5 935]
# [ 5 936]]
0 935or are they a list of length 2