Muchas dudas usando def

Roberto López Steiner roberto.steiner en gmail.com
Sab Ago 4 03:30:26 CEST 2007


Hola todos estoy empezando a estudiar python y estoy usando el libro:
"Aprenda a Pensar Como un Programador
con Python"

En el capitulo 3 seccion 6 se habla sobre como añadir funciones, en
especifico viene lo siguiente:

" .... El primer par de funciones que escribiremos no tienen parametros, de
manera
que su sintaxis es:
def nueva_linea():
     print
Esta funcion se llama nueva linea. Los parentesis vacios indican que no
tiene
parametros. Contiene una unica sentencia, que muestra como salida un
caracter
de nueva linea (es lo que sucede cuando utiliza una orden print sin
argumentos).
Llamamos entonces a la funcion nueva usando la misma sintaxis que usamos
para las funciones internas:
print "Primera linea."
nueva_linea()
print "Segunda linea."
The output of this program is
Primera linea.

Segunda linea. ..."


si yo escribo en el shell :

>>>def nueva_linea():
             print

y luego hago el guion:

print "Primera linea."
nueva_linea()
print "Segunda linea."

y ejecuto el guion me da el siguiente error

Traceback (most recent call last):
  File "E:\python\lineas separadas por espacio.py", line 2, in <module>
    nueva_linea()
NameError: name 'nueva_linea' is not defined

pero si pongo todo en un mismo guion todo se ejecuta bien, me podrian ayudar
a entender el por que?
o yo estoy haciendo algo mal?

Gracias de antemano. Hasta pronto, y una disculpa por tan largo mensaje




Más información sobre la lista de distribución Python-es