Ejemplo de funciones
Listas, try..
Ejemplo
Enunciado
El programa pedirá al usuario un número entero hasta que, voluntariamente, el usuario indique que no quiere introducir más. A continuación, se visualizarán los siguientes resultados:
Cuántos números se han generado de dos cifras.
Cuál es la media de los números generados.
Cuál es la suma de los números de dos cifras introducidos
Cuántas cifras en total se han generado (suma de las cifras de todos números).
El programa, debe tener 3 funciones como mínimo:
Validar los datos.
Calcule los datos y visualizar los datos en la propia función.
Calcule la suma de las cifras de todos los números. Y visualice la información en el programa principal
Análisis:
Pedir un número al usuario, verificar que éste sea entero mayor que cero.
Preguntar al usuario si quiere introducir otro.
Visualizar el resultado.
Diagrama

Código completo
#Validar los números introducidos
def validar(mensaje):
bandera=True
while bandera:
try:
dato=int(input(mensaje))
except:
print("No tecleo números")
else:
if dato>0:
bandera=False
else:
print("un dato númerico fuera del rango")
return dato
#Imprimir los resultados
def imprimir():
print("hay {} de dos cifras".format(len(lista_dos)))
#Calculo del número de cifras
def calculo():
suma=0
for i in range(len(lista_dos)):
suma+=len(str(lista_dos[i]))
return suma
#Inicializar las variables
opcion="si"
lista_numeros=[]
lista_dos=[]
#Repetir hasta que el usuario teclee si
while opcion!="no":
numero=validar("dame el número")
lista_numeros.append(numero)
#Verifica si el número tiene dos digitos
if len(str(numero))==2:
lista_dos.append(numero)
opcion=input("quieres continuar").lower()
#Imprimir los resultados
print("lista de números{}".format(lista_numeros))
#Imprimir los resultados si hay números con dos digitos
if len(lista_dos)==0:
print("no hay de dos cifras")
else:
imprimir()
print("la suma de las cifras es {}".format(calculo()))
Última actualización