def Pascal(n):
"""
El código solo corre si el número entregado es entero,
el comando if y la función isinstance(#, naturaleza de #)
permiten esto.
"""
if isinstance(n, int):
list=[1] ##una vez cumplida la condición, se crea una lista con el elemento 1
for i in range(n-1): ##recorre desde 0 al # que le entregemos
newlist=[] ## se crea otra lista
newlist.append(list[0]) ##en la nueva lista, se agrega el primer elemento de list
for i in range(len(list)-1): ## este for depende de la medida de list
newlist.append(list[i]+list[i+1]) ## hace que se agrege a la nueva lista la suma de un elemnto de list con el siguiente
newlist.append(list[-1]) ##agregas el último
list=newlist #aqué se reemplaza a la nueva lista por la nueva, para volver a la iteración
print(list)
if isinstance(n, float):
return "introduzca_un_entero"
else:
print("introduce un número")
Pascal("a")
def Pascal2(nums):
"""
Esta primera parte del ejercicio solo toma los enteros introducidos en la lista.
"""
new_list = []
for value in nums:
new_list.append(str(value))
new = [x for x in new_list if x.isdigit()]
final = []
for value in new:
final.append(int(value))
"""
*******************************
Segunda parte, en donde se modifica el código del primer ejercicio.
"""
real_final = []
for value in final:
lists=[1]
for i in range(value):
newlist2=[]
newlist2.append(lists[0])
for i in range(len(lists)-1):
newlist2.append(lists[i]+lists[i+1])
newlist2.append(lists[-1])
lists=newlist2
real_final.append(lists)
print(real_final)
result = []
for sublist in real_final:
for item in sublist:
result.append(item)
print(result)
Pascal2([2,4])
[[1, 2, 1], [1, 4, 6, 4, 1]] [1, 2, 1, 1, 4, 6, 4, 1]