Sorting Dictionaries by value

I had to so some dictionary work today whilst in the coal-mine.... All was going well until I tried to sort by Value.

#!/usr/bin/python
from collections import OrderedDict
from collections import Counter
words={}
line="this is a line and a very fine line it is line up over there"
for w in line.split(' '):
  if w in words:
    words[w] += 1
  else:
    words[w] = 1
#print words
#
#Now Sort this
#
d_sorted_by_value = OrderedDict(sorted(words.items(), key=lambda x: x[1]))
mc=Counter(d_sorted_by_value).most_common()[0:2]
#print d_sorted_by_value
print mc