Olá, Daniela!
A razão pela qual você está vendo "None" após cada impressão é porque você está usando print(programa.imprime()) em seu loop. O método imprime() já contém um comando print, então você está basicamente imprimindo a impressão.
Quando você chama print() em um método que não tem um retorno explícito (como o seu método imprime()), Python retorna None por padrão. Então, print(programa.imprime()) está primeiro executando programa.imprime(), que imprime a string formatada, e então tenta imprimir o retorno desse método, que é None.
Para corrigir isso, você só precisa chamar o método imprime() sem o print(). Seu loop deve ficar assim:
for programa in filmes_e_series:
programa.imprime()
Dessa forma, o método imprime() irá executar o comando print() e não haverá tentativa de imprimir um retorno None.
Bons estudos!