r = np.array([random.randrange(1, 1000) for _ in range(0, 1000)])
c = r[:, (None)]

def option1(r):
    dists = np.abs(r - r[:, (None)])

def option2(r):
    dists = scipy.spatial.distance.pdist(r, 'cityblock')

def option3(r):
    dists = sklearn.metrics.pairwise.manhattan_distances(r)
Fastest pairwise distance metric in python