Olá, estou aprendendo python e não tenho muito conhecimento em algoritmos, fiz uma prova na faculdade em python e tive um problema, usei o comando OR para que eu pudesse escrever o tipo de consumidor de duas maneiras diferentes porém se eu escrever na forma de letra maiúscula o programa sempre lê a primeira condição que aplica a tarifa de 0.7 reais. Se alguém puder tirar minha dúvida eu agradeço, boa noite.
 
#Definindo valores para essas variáveis para que o processamento funcione normalmente.
tarifa = 0
valor_conta = 0
erro = 0
#ENTRADA DE DADOS - Pedindo ao usuário que digite as informações requisitadas.
consumidor = str(raw_input("Informe o tipo de consumidor: (R/CI) ")) 
consumo = int(raw_input("Informe o consumo: ")) 
#PROCESSAMENTO - Seção de cálculos.
if (consumo<0):
    erro = 1
elif ((consumidor == "R") or (consumidor == "r") and(consumo <= 100)):
    tarifa = 0.70
elif ((consumidor == "R") or (consumidor == "r") and (consumo > 100)):
      tarifa = 0.75
elif ((consumidor == "CI") or (consumidor == "ci") and (consumo <= 100)):
      tarifa = 0.55
elif ((consumidor == "CI") or (consumidor == "ci") and (consumo > 100)):
      tarifa = 0.65
else:
    erro = 1
#PROCESSAMENTO 2 - Cálculo final.
valor_conta = consumo * tarifa
#SAIDA DE DADOS - Informações que aparecerão na tela.
if ((erro == 0)):
    print
    print("Valor da conta foi de {}R$".format(float(valor_conta)))
    print("Consumo mensal {} KW/h" .format(float(consumo)))
    print("Tarifa aplicada {}R$".format(float(tarifa)))
else:
    print("Dados Inválidos.")