title: Can lambda be used instead of a method, as a key in sorted()?
body: <p>This is my first time asking a question. I've already got so much help from you without even asking. (Gratitude face).
  So, I found this useful piece of code from around here a few weeks ago.</p>
  
  <pre><code>import re
  
  def yearly_sort(value):
      numbers = re.compile(r'(\d+)')
      parts = numbers.split(value)
      parts[1::2] = map(int, parts[1::2])
      return parts
  </code></pre>
  
  <p>It works perfectly here:</p>
  
  <pre><code>def get_files_sorted(path_to_dir):
     file_names = []
     for root, dirs, files in os.walk(path_to_dir):
        for file_name in sorted(files, key=yearly_sort):
           file_names.append(os.path.join(root, file_name))
     return file_names
  </code></pre>
  
  <p>Now, I'm facing a problem describing the above function (as you can already see from a non-descriptive method name).</p>
  
  <p>What should be the name of above method (instead of some_sort())?</p>
  
  <p>Can this method be squeezed somehow in a lambda such that <strong>key</strong> in the sorted() can bind to key=lambda?</p>