Como eu corrijo esse resultado?

Fiz um pequeno código que lê um arquivo que tem algumas linhas e identifica quantas vezes o que tem naquela linha é encontrado em outro arquivo. Funciona, mas o print tá com um pequeno erro estético que queria saber como corrigir.

Segue o código:
def resultado():
fileTypes = open(“dificuldades.txt”, “r”)
types = fileTypes.readlines()
print(types)
fileData = open(“data.txt”, “r”)
data = fileData.readlines()
for type in types:
freq = 0
for line in data:
if (type == line):
freq += 1
print("{}: {}".format(type, freq))

resultado()
sair = input(‘a’)

Segue o resultado:
Equilíbrio do ponto material
: 30
Equilíbrio do corpo extenso
: 32
Momento de uma força
: 34
Leis de Newton
: 12
Alavancas
: 28
Atrito
: 29
Tipos de forças
: 22
MRU
: 19
MRUV
: 20
Lançamento vertical
: 34
Lançamento horizontal
: 34
Queda livre
: 28
Movimento circular
: 40
Gases - Física
: 35
Termodinâmica - Física
: 31

: 66
Cálculo estequiométrico em geral
: 18
Casos especiais de cálculos estequiométricos
: 25
Soluções
: 37
Termodinâmica - Química
: 29
Frações do petróleo
: 14
Fatores que alteram a velocidade de uma reação
: 27

: 66
Conceitos básicos de genética
: 6
Biotecnologia
: 11
Mutações
: 11
Primeira lei de mendel
: 7
Probabilidade
: 15
Genealogia
: 18
Alelos múltiplos
: 18
Reproduções assexuadas
: 2
Reproduções sexuadas
: 3
Mitose e/ou meiose
: 10
Sistema urinário: 0

O type ta ficando com um new-line no final faz type[:-1] pra retornar tudo exceto o ultimo caractere e deve sumir.