sorted(arr, key=lambda x:(self.function(x), x))
What's the meaning of (self.function(x), x)?
CodePudding user response:
This allows sorting by two criteria. If two values are equal for self.function(x), they will be sorted by x.
CodePudding user response:
The key parameter of the sorted method takes in a function reference that returns a key to be used for sorting purposes.
as an example
arr = ["apple", "Andrew", "Cat", "cool"]
print(sorted(arr, key=lambda item: item.lower()))
would sort the items in the arr based on their str.lower representation.
the following snippet
sorted(arr, key=lambda x:(self.function(x), x))
sorts the items in arr based on the tuple (self.function(x), x),
see this post to see how python sorts an array of tuples.
