[Python-es] Equivalente en python de algo en C,, read()

Horacio horacio9573 en gmail.com
Lun Ago 23 22:25:33 CEST 2010


El día 23 de agosto de 2010 15:51, marmolro <marmolro en gmail.com> escribió:
>
>
> 2010/8/23 Horacio <horacio9573 en gmail.com>
>>
>> Buenas estoy haciendo pruebas en un cliente en IPv6, pero hay
>> instrucciones que me faltan ya que los tutoriales que poseo están
>> incompletos... bueno en este código..
>>
>> import socket
>> c=socket.socket(socket.AF_INET6,socket.SOCK_STREAM)
>> c.connect(("::1",2001))
>> (*)
>> print "Escuche: ",recibido
>> c.close()
>>
>> en (*) debería estar el equivalente en python de este pedazo de código en
>> C.
>> ......
>> char buf[256];
>> ....
>>
>>   read(c,buf,sizeof(int)); <----- acá está el problema...
>>   close(c); /// este ya está...
>>   x=atoi(buf);
>>
>
> Creo que preguntas por este método:
> http://docs.python.org/library/socket.html#socket.socket.recv
> y en vez de write sería:

Ya lo he probado y me da una serie de chirimbolos ... desupés de los
datos, a ver me saca cosas como esta...

$python cliente6.py
Escuche:  -2090377388
dd�@;{�X8{�̃
�d����}�.N=�((}�P�鿿�{�@�鿀�4����'}�@;{�X&}�hA{�@���4�������p&}�̃`{�����N�j�)�u�

El dato útil es -2090377388 pues hago un "atoi()" del envío que es un char[256]


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