106 lines
3.0 KiB
Python
106 lines
3.0 KiB
Python
|
import pdb
|
||
|
|
||
|
print('''
|
||
|
Se importa con:
|
||
|
import pdb
|
||
|
|
||
|
Breakpoint en la linea donde se requiera:
|
||
|
pdb.set_trace()
|
||
|
|
||
|
Comandos para tomar control de la ejecución:
|
||
|
|
||
|
h(elp)
|
||
|
- Muestra la ayuda de todos los comandos que provee pdb.
|
||
|
|
||
|
s(tep)
|
||
|
- Ejecuta la línea actual. Si en la línea actual hay una llamada
|
||
|
de función se mete dentro del código de la función para poder seguir
|
||
|
la ejecución de la misma.
|
||
|
|
||
|
n(ext)
|
||
|
- Continúa la ejecución hastala próxima línea.
|
||
|
|
||
|
r(eturn)
|
||
|
- Continúa la ejecución hasta el return de la función actual.
|
||
|
|
||
|
c(ontinue)
|
||
|
- Continúa la ejecución hasta el próximo breakpoint o
|
||
|
hasta el fin del programa.
|
||
|
|
||
|
l(ist)
|
||
|
- Muestra el código del archivo actual.
|
||
|
|
||
|
p
|
||
|
- Evalúa la expresión pasada como parámetro, la evalua
|
||
|
en el contexto actual e imprime su valor.
|
||
|
|
||
|
q(uit)
|
||
|
- Sale del depurador. El programa es abortado.
|
||
|
|
||
|
|
||
|
''')
|
||
|
|
||
|
pdb.set_trace()
|
||
|
print('''
|
||
|
Ayuda del degguber
|
||
|
|
||
|
(Pdb) h
|
||
|
|
||
|
Documented commands (type help <topic>):
|
||
|
========================================
|
||
|
EOF c d h list q rv undisplay
|
||
|
a cl debug help ll quit s unt
|
||
|
alias clear disable ignore longlist r source until
|
||
|
args commands display interact n restart step up
|
||
|
b condition down j next return tbreak w
|
||
|
break cont enable jump p retval u whatis
|
||
|
bt continue exit l pp run unalias where
|
||
|
|
||
|
Miscellaneous help topics:
|
||
|
==========================
|
||
|
exec pdb
|
||
|
''')
|
||
|
|
||
|
pdb.set_trace()
|
||
|
|
||
|
|
||
|
def a_function(a_number):
|
||
|
"""
|
||
|
La función recibe un número @a_number y:
|
||
|
Si es par:
|
||
|
Si es múltiplo de 10:
|
||
|
devuelve el número dividido en 2
|
||
|
Si es múltiplo de 8:
|
||
|
devuelve el número dividido en 4
|
||
|
si es otro resta 1
|
||
|
Si es impar:
|
||
|
Si es múltiplo de 3:
|
||
|
devuelve el número multiplicado por 11
|
||
|
Si es múltiplo de 7:
|
||
|
devuelve el número multiplicado por 23
|
||
|
si es otro suma 1
|
||
|
"""
|
||
|
|
||
|
pdb.set_trace()
|
||
|
result = None
|
||
|
if a_number %2 == 0:
|
||
|
if a_number % 10 == 0:
|
||
|
result = a_number / 2
|
||
|
elif a_number % 8 == 0:
|
||
|
result = a_number - 1
|
||
|
else:
|
||
|
result = a_number -1
|
||
|
else:
|
||
|
if a_number % 3 == 0:
|
||
|
result = a_number * 11
|
||
|
elif a_number % 7 == 0:
|
||
|
result = a_number * 23
|
||
|
else:
|
||
|
result = a_number + 1
|
||
|
return result
|
||
|
|
||
|
result_1 = a_function(20)
|
||
|
print(result_1)
|
||
|
print('END')
|
||
|
|