title: Python prettytable Sort by Multiple Columns
body: <p>I'm using PrettyTable to print data to the terminal in a nice table format.
  It's pretty easy to print it ordered by a single column.</p>
  
  <pre><code>from prettytable import PrettyTable
  
  table = PrettyTable(["Name", "Grade"])
  table.add_row(["Joe", 90])
  table.add_row(["Sally", 100])
  print table.get_string(sortby="Grade", reversesort=True)
  
  &gt;&gt; Table with Sally on top, because her score is highest.
  </code></pre>
  
  <p>My trouble is I want to sort on two columns.  In this surrogate case, I would want to print by grade, and then alphabetically if there was a tie. </p>
  
  <pre><code>table = PrettyTable(["Name", "Grade"])
  table.add_row(["Joe", 90])
  table.add_row(["Sally", 100])
  table.add_row(["Bill", 90])
  print table.get_string(sortby=("Grade","Name"), reversesort=True)
  
  &gt;&gt; Doesn't work
  </code></pre>
  
  <p>The docs say that sort_key will allow me to write a function to accomplish this, but I haven't seen an actual implementation to work off.</p>