Eine relativ kurze und nicht allzu konfuse Lösung sieht so aus:

def countBigram(w1, w2, dist):
  d2 = dist.setdefault(w1, {})
  d2[w2] = d2.get(w2)+1

Eine Lösung mit has_key und Konsorten ist aber natürlich auch ok.