[Python]Problemas Módulo OS

Iniciado por Arnau27, 11 Mayo 2012, 18:44 PM

0 Miembros y 1 Visitante están viendo este tema.

Arnau27

Muy buenas, espero que puedan responderme.
Código (python) [Seleccionar]
import os
r=os.system("pwd")
print(r)


Al ejecutar este pequeño script me devuelve:
Código (python) [Seleccionar]
/Users/lala
0

No entiendo por que me devuelve un 0 al final. Es un problema ya que si, por ejemplo, necessito saber donde esta este script necessito el print working directory. No solo pasa con el pwd, sino que pasa con todos los comandos asi que intuyo que debe ser del módulo.
Como podría quitar ese 0?
La confianza es la base de la elegancia.

Eleкtro

#1
En vez de usar un comando PWD propio de Linux, podrías obtenerlo así haciendolo compatible con el resto de OS:

Código (python) [Seleccionar]
import os
r=os.getcwd()
print r


EDITO: Para evitar el código de retorno debes usar popen:

Código (python) [Seleccionar]
import os
r=os.popen("pwd").read()
print r


EDITO2: Busca información acerca de los return codes o exit status, Pero en general:
Citar0 = El comando finalizó correctamente sin errores-
(cualquier otro número) = Error.

Salu2








Arnau27

Cita de: EleKtro H@cker en 11 Mayo 2012, 18:55 PM
En vez de usar un comando PWD propio de Linux, podrías obtenerlo así haciendolo compatible con el resto de OS:

Código (python) [Seleccionar]
import os
r=os.getcwd()
print r


EDITO: Para evitar el código de retorno debes usar popen:

Código (python) [Seleccionar]
import os
r=os.popen("pwd").read()
print r


EDITO2: Busca información acerca de los return codes o exit status, Pero en general:
Salu2
Gracias crack!
La confianza es la base de la elegancia.