tenés muchos errores de concepto:
1) el más grave, raw_input no existe en python 3
2) la función isalpha() retorna verdadero o falso entonces usas if o not if
if len(caracter) == 1 and caracter.isalpha():#ya estás diciendo que debe ser verdadera
elif len(caracter) >= 2 and not caracter.isalpha():#debe ser falsa
3)
if caracter >= "A" and caracter <= "Z": #evalua que se encuentre dentro de A y Z mayus
esto no es que esté mal, pero es feo mirarlo!!, lo mismo pero en python:
if "A" <= caracter <= "Z":
4)¿uándo te enseñan format?
en fin, unas modiifcaciones a ese código,manteniendolo casi igual:
#-*- coding:utf -8 -*-
print("Escribe un Letra para saber si Mayuscula o Minuscula")
caracter=input("Escribe un caracter: ") #Lee la variable
if len(caracter) == 1 and caracter.isalpha(): #Si solo es un caracter adelante y alfabetica
if "A" <= caracter <= "Z": #evalua que se encuentre dentro de A y Z mayus
print("El caracter ", caracter," Es Mayuscula")
elif "a" <= caracter <= "z":
print("El caracter ", caracter," Es Minuscula") #Evalua que se encuentre entre a y z minus
elif caracter == "Ñ": # apartir de aqui evalua si es una Ñ
print ("El caracter ",caracter," Es Ñ")
elif caracter == "ñ":
print("El caracter ",caracter,"Es ñ")
else: #si no cumple ninguna de las anteriores, no es una letra.
print("El caracter no es una letra")
elif len(caracter) >= 2 and not caracter.isalpha(): #quiero que si es mas d 2 caracters
print("Debes escribir solo un caracter (sin numeros)") #y si esa cadena tiene numeros
#lo identifique
else:
print("No escribas una cadena, solo un caracter") #ninguna d las anteriores
Saludos