Ho un tipo di array di ([1,2,3,4,5,6],[1,2,3,4,5,6])
questo. Devo inviarlo su un socket STREAM/TCP in python. Quindi devo ricevere lo stesso array sul lato ricevente.come inviare un array su un socket in python
risposta
È possibile serializzare l'oggetto prima di inviarlo al socket e alla fine del destinatario Deserializzare. Controllare this
prese di corrente sono flussi di byte, quindi ideale è quello di scrivere il protocollo (leggi this)
Questo è un esempio di base senza protocollo e si dovrebbe preoccuparsi di buffer -> recv(). Se è troppo piccolo, i dati verranno tagliati. Ecco perché è necessario implementare un protocollo, se si inviano dimensioni di dati sconosciute.
Cliente:
import socket, pickle
HOST = 'localhost'
PORT = 50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
arr = ([1,2,3,4,5,6],[1,2,3,4,5,6])
data_string = pickle.dumps(arr)
s.send(data_string)
data = s.recv(4096)
data_arr = pickle.loads(data)
s.close()
print 'Received', repr(data_arr)
Server:
import socket
HOST = 'localhost'
PORT = 50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print 'Connected by', addr
while 1:
data = conn.recv(4096)
if not data: break
conn.send(data)
conn.close()
Prese di python pronte per l'incollaggio chiare e pratici how-to – Kruser
Come può Stampo il valore dell'array su un particolare indice? –
@AnuragSingh fornire un esempio di dati e il risultato che è necessario. – danielpopa
- 1. Socket inviare e ricevere array di byte
- 2. Come svuotare un socket in python?
- 3. Come posso inviare dati in formato binario su un socket Java?
- 4. Come riordinare un ditt ordinato in python basato su array?
- 5. Come convertire un array associativo in python?
- 6. Inviare una classe anonima su socket? (Object..Stream in Java)
- 7. Come svuotare i socket Python?
- 8. importare un array in python
- 9. Come creare un array intero in Python?
- 10. Come prendere input in un array + PYTHON?
- 11. Come inviare un file zip come allegato in python?
- 12. Python, ricreare un socket e riconnettersi automaticamente
- 13. Invia un file attraverso i socket in Python
- 14. Come inviare un lavoro di stampa alla stampante in python
- 15. come scrivere array su outputStream in Java
- 16. Come inviare un messaggio in un flusso reattivo da un sottoscrittore a un editore in una connessione socket Web
- 17. Come inviare un evento puntatore su Android
- 18. Come posso inviare un segnale da un programma python?
- 19. Qual è il modo migliore per inviare un oggetto su una rete in Python?
- 20. Come inviare un cookie in un URLConnection?
- 21. Come inviare NSString tramite socket utilizzando NSOutputStream
- 22. Come convertire un set python in un array numpy?
- 23. Convertire un oggetto in un array di byte in C#, inviarlo su un socket, quindi riconvertire in oggetto
- 24. Come inviare un "multipart/form-data" con richieste in python?
- 25. Python + socket
- 26. Come inviare array js in Ajax
- 27. Invio e ricezione di array tramite socket
- 28. Python sendto non sembra inviare
- 29. BufferedInputStream nel byte [] da inviare tramite un socket a un database
- 30. Come rispondere a una richiesta di metodo "CONNECT" in un server proxy utilizzando socket in python?
trovare il modo di codifica in byte. Qual è il modo migliore dipende probabilmente dai tuoi dati. Vuoi sempre inviare matrici di piccoli numeri? – Ryan
come nota a margine ... sembra una tupla di array (elenchi), non una matrice reale. Inoltre .... pickle potrebbe servirti bene: https://docs.python.org/3.2/library/pickle.html?highlight=pickle#pickle –
in realtà voglio mandare una matrice 5x5 e contiene valori float.per favore, dai io il modo migliore per farlo. con il codice, se possibile. grazie – user3774358