Liczenie wystąpień listu Python

Próbuję policzyć występowanie liter i wydrukować je. Oto, co mam do tej pory:

def histogram(L):
    d = {}
    for x in L:
      for letter in x:
        if letter in d:
          d[letter] += 1
        else:
          d[letter] = 1
    for i in range(len(d)):
      print('{} | {}'.format(d, d[i])) # GETTING ERRORS ON THIS LINE
    return d
histogram(open('cipher.txt'))

Z jakiegoś powodu otrzymuję błędy w tej linii. Jak wydrukowałbym to poprawnie?

EDIT: rozwiązanie moje Martijn! Rekwizyty! ale czy ktoś wie, jak posortować słownik w porządku alfabetycznym?

questionAnswers(2)

yourAnswerToTheQuestion