Foros del Web » Programando para Internet » Python »

Funcion en pyton me da error

Estas en el tema de Funcion en pyton me da error en el foro de Python en Foros del Web. Buenos dias. Estoy programando en python y estoy ahora con las funciones. Estoy haciendo el ejercicio del manual que es que declaras una funcion y ...
  #1 (permalink)  
Antiguo 17/09/2013, 04:10
 
Fecha de Ingreso: octubre-2009
Mensajes: 182
Antigüedad: 15 años, 1 mes
Puntos: 5
Funcion en pyton me da error

Buenos dias. Estoy programando en python y estoy ahora con las funciones.
Estoy haciendo el ejercicio del manual que es que declaras una funcion y sacas 2 valores pasados por ti. Estoy usando Phyton self que viene con la instalacion de python. MI codigo es el siguiente:

Código Python:
Ver original
  1. def prueba(texto,numero):
  2.     print texto
  3.     print numero
En el phyton self que es donde se prueba si el programa funciona pongo lo que dice el ejemplo que es prueba("Hola",2).
Cuando pongo eso me dice:

Traceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
prueba(2)
NameError: name 'prueba' is not defined

Dice que prueba no esta definido y he definido la funcion como ha dicho el manual.
Quiero saber el error pra que funcione y pueda continuar. Gracias.

Última edición por Carlangueitor; 17/09/2013 a las 13:06
  #2 (permalink)  
Antiguo 17/09/2013, 13:10
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 8 meses
Puntos: 1329
Respuesta: Funcion en pyton me da error

No, si tu entras a la shell y defines una función, al salir se borra. No se guarda nada de lo que escribas.

Escribe en un archivo, guárdalo con la extensión .py y correlo así python archivo.py

PD: Muevo el tema al foro de python

Saludos
__________________
Grupo Telegram Docker en Español
  #3 (permalink)  
Antiguo 18/09/2013, 03:13
 
Fecha de Ingreso: octubre-2009
Mensajes: 182
Antigüedad: 15 años, 1 mes
Puntos: 5
Respuesta: Funcion en pyton me da error

Cuando hice la funcion como todos los programas que he echo lo guarde en un archivo con extension .py y a si todos los programas anteriores me van pinchandole 2 toques al archivo. Cuando hago este se abre y se cierra rapidamente. He puesto python el nombre del archivo con su extension en la consola y dice comando python no lo reconoce.
¿Que puedo hacer?. Gracias.
  #4 (permalink)  
Antiguo 18/09/2013, 09:11
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Funcion en pyton me da error

Pon el archivo completo que estás probando. Si "prueba" no está definido, seguramente ese mismo error sea el que está mostrando en la consola antes de cerrarse.

Si estás en windows, seguramente la ruta a python sea c:\python2.7\python.exe, prueba eso.
  #5 (permalink)  
Antiguo 18/09/2013, 15:34
 
Fecha de Ingreso: enero-2012
Ubicación: Buenos Aires
Mensajes: 745
Antigüedad: 12 años, 10 meses
Puntos: 35
Respuesta: Funcion en pyton me da error

Usa "C:\Python27\python.exe" o añade una línea como esta al final de tu archivo:

Código Python:
Ver original
  1. raw_input()
  #6 (permalink)  
Antiguo 19/09/2013, 02:55
 
Fecha de Ingreso: octubre-2009
Mensajes: 182
Antigüedad: 15 años, 1 mes
Puntos: 5
Respuesta: Funcion en pyton me da error

He puesto en el final del programa raw_input() de tal manera que se me queda a si el programa:
def prueba(texto,numero):
print texto
print numero
raw_input()
Cuando le doy 2 toques al archivo se me habre la consola de windows y le pngo lo siguiente prueba("Hola",2). Al hacer se cierra, no me saca los valores Hola y 2 como pone en el ejercicio que tengo. ¿Que puedo hacer?. Gracias.

Me he metido en c:\python2.7\python.exe Que es la consola del python y he puesto el nombre del archivo que es Funcion1 y me dice lo que me pone esto:

Traceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
prueba(2)
NameError: name 'prueba' is not defined

Pero en programas que si me van hago lo mismo, pongo el nombre y me dice lo mismo y si le doy 2 toques van perfectamente.

¿Que puedo hacer?.Gracias.
  #7 (permalink)  
Antiguo 19/09/2013, 08:30
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Funcion en pyton me da error

a ver, asumiendo que la definición de la función prueba sea lo único que tenés en el archivo. La forma de llamar a prueba es la siguiente, desde la consola o desde otro archivo en la misma carpeta:
Código Python:
Ver original
  1. import miarchivo
  2. miarchivo.prueba("hola", 2)
o,
Código Python:
Ver original
  1. from miarchivo import prueba
  2. prueba("hola", 2)
Cualquier otra forma no funcionará, y como no das los detalles exactos ni el código completo, supongo que tu problema viene por la forma de importar el módulo y llamar a la función.


Saludos.
  #8 (permalink)  
Antiguo 20/09/2013, 05:30
 
Fecha de Ingreso: octubre-2009
Mensajes: 182
Antigüedad: 15 años, 1 mes
Puntos: 5
Respuesta: Funcion en pyton me da error

Respondiendo al ultimo. Tengo el siguiente codigo dentro del archivo .py

def prueba(texto,numero):
print texto
print numero
raw_input()

Este es el codigo que tengo. Cuando le doy 2 toques al archivo y pongo prueba("Hola",2) se cierra la consola de windows. Cuando lo pongo en el shell para probarlo me da el siguiente error:

Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
prueba("Hola",2)
NameError: name 'prueba' is not defined

El codifo de from miarhivo import pueba imagino que sera despues el from la rua donde esta. Pero yo guardo los archivos de phyton en otro lado lo de impor sera la llamada a la funcion desde la consola de phyton imagino.
Cuando hago eso pongo from la ruta donde esta el archivo con su extension y despues el import con el nombre de la funcion me da el siguiente error:

SyntaxError: EOL while scanning string literal.

¿Que puedo hacer para solucionar esto?. He pensado que alomejor con otro interprete de phyton mas profesional ltendria todo para hacerlo todo bien sin problemas. Gracias.
  #9 (permalink)  
Antiguo 20/09/2013, 08:39
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Funcion en pyton me da error

Cita:
Iniciado por jlmn23 Ver Mensaje
El codifo de from miarhivo import pueba imagino que sera despues el from la rua donde esta
Por supuesto que NO. Los módulos se importan por nombre de archivo, no por ruta.

Esto no es válido de ninguna manera:

from /ruta/a/mi/archivo.py import loquesea

Otra cosa, da lo mismo lo que ingreses en el momento en el que la consola queda esperando entrada (por el raw_input), pareces estar esperando que el intérprete ejecute lo que le escribas, eso NO va a suceder. La consola se cierra porque ya no tiene nada más que hacer.

Podrías mostrar EXACTAMENTE cómo estás haciendo las cosas en el intérprete de python? ¿estás usando c:\python27\python.exe archivo.py?
  #10 (permalink)  
Antiguo 20/09/2013, 12:06
 
Fecha de Ingreso: enero-2012
Ubicación: Buenos Aires
Mensajes: 745
Antigüedad: 12 años, 10 meses
Puntos: 35
Respuesta: Funcion en pyton me da error

Otro intérprete? No tiene nada que ver. Por cierto es Python, no "Phyton".
  #11 (permalink)  
Antiguo 23/09/2013, 04:46
 
Fecha de Ingreso: octubre-2009
Mensajes: 182
Antigüedad: 15 años, 1 mes
Puntos: 5
Respuesta: Funcion en pyton me da error

Estoy usando el idle de python (Python GUI) que cuando le picho sale el python shell y ahi programo guardo el archivo en un archivo .py. Gracias.

Etiquetas: funcion, programación-general
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:39.