擅长:python、mysql、java
<pre><code>def cmpWith(num):
def compare(item):
""" calculate the difference between num and item """
return sum(
abs(int(n) - int(x)) # cast to int to make the substraction possible
for x,n in zip(item, num) # zip makes pairs from both lists
)
return compare
lst = ['111','222','333','444','555','123']
print sorted(lst, key=cmpWith('511'))
</code></pre>