Thank you for reading this.
As an exercise, and for no other purpose, I'm trying to convert some C++
code that I put together 17 years ago. I'm very rusty and hours of
Internet searches have made me more confused that I was to start with.
The following works under Python2 but not under Python3.
import socket
host = "127.0.0.1"
#host = "localhost"
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.connect((host, 1210))
data = "GET_LIST"
s.sendall(data)
#s.sendto(data, (host, 1210))
s.shutdown(1)
while 1:
buf = s.recv(2048)
if not len(buf):
break
#print "Received: %s" % buf
According to the Python3 wiki sendto() should work under Python3 but I
get this error:
Traceback (most recent call last):
File "/home/phil/Python/predict_client1.py", line 12, in <module>
s.sendall(data)
TypeError: a bytes-like object is required, not 'str'
The same error is received if I use sendall(data).
So, is this reasonable UDP client code and what have I overlooked to get
this to work under Python3?
--
Regards,
Phil
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor