Perfecto, era eso! Me pase un par de horas mirando el paquete string y otros relacionados pensando que el problema estaba en la representación de la cadena :-/
Muchas gracias! El 2 de diciembre de 2014, 12:28, Rock Neurotiko <miguelglafue...@gmail.com> escribió: > Con el decode que comenta Kiko te funcionara, la razon es que communicate > de Popen te devuelve los datos en bytes y no en string. > > El Tue Dec 02 2014 at 12:20:10, Kiko (<kikocorre...@gmail.com>) escribió: > > >> >> El 1 de diciembre de 2014, 20:04, Alejandro Ab <aagust...@gmail.com> >> escribió: >> >> Buenas noches, >>> >>> estoy haciendo un programa que lea la salida de una instrucción >>> ejecutada en un terminal Debian. >>> >>> El problema es que el cuando *imprimo* por pantalla el string retornado >>> me aparece algo similar a esto: >>> >>> *b'*BSS 8c:0c:a3:2c:eb:0a (on wlan0) -- 0*\n\t\t* * L-SIG TXOP Prot: 0 >>> *\n\t\*t * PCO active: 0\n\t\t * AIFSN 7*\n\t\t* * VI: CW 7-15, AIFSN >>> 2, TXOP 3008 usec*\n\t\t* * VO: CW 3-7, AIFSN 2, TXOP 1504 usec\n' >>> >>> con el b inicial que no se que es y todos los saltos de linea impresos >>> como caracteres, como si hubieran pasado toda la string por un repr(). >>> >>> Me preguntaba si alguien sabe que estoy haciendo mal, o si, a modo de >>> chapuza, conocéis alguna función reversa de repr() >>> >>> Cualquier sugerencia sera bienvenida. >>> >>> ---------------------------------------------------------- >>> >>> import subprocess as sp >>> devname = "wlan0" >>> >>> channel = [2412, 2417, 2422, 2427, 2432, 2437, 2442, 2447, 2452, 2457, >>> 2462, 2467, 2472, 2484] >>> loc_max_channel = 13 >>> >>> # Set up the command >>> for ch in range(0, loc_max_channel): >>> # Para cada canal ejecuta y imprime la instruccion >>> p1 = sp.Popen(['iw', 'dev', devname, 'scan', 'freq', >>> str(channel[ch])], stdout=sp.PIPE) >>> output = p1.communicate()[0] >>> print(output) >>> >>> >>> Cambia la última línea por lo siguiente a ver si es lo que quieres: >> print(output.decode('utf-8')) >> >> >> >> >>> >>> _______________________________________________ >>> Python-es mailing list >>> Python-es@python.org >>> https://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> _______________________________________________ >> Python-es mailing list >> Python-es@python.org >> https://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> > > _______________________________________________ > Python-es mailing list > Python-es@python.org > https://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > >
_______________________________________________ Python-es mailing list Python-es@python.org https://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/