import random import timeit def ff(): maxx = 10000000 vet = [random.randint(1,maxx) for _ in range(maxx)] vet.sort() #print(vet) def gg(): maxx = 10000000 vet = [[random.randint(1,maxx)] for _ in range(maxx)] #vet.sort() vet.sort(key=lambda x: x[0]) #print(vet) def hh(): maxx = 10000000 vet = [{'a':random.randint(1,maxx)} for _ in range(maxx)] vet.sort(key=lambda x: x['a']) #print(vet) class EE: def __init__(self, dd): self.v=dd def __repr__(self): return '{' + str(self.v) +'}' def ii(): maxx = 10000000 vet = [EE(random.randint(1,maxx)) for _ in range(maxx)] vet.sort(key=lambda x: x.v) #print(vet) if __name__ == "__main__": import timeit print (timeit.timeit(gg, number=1))