Python3 programmers have forgotten to convert/implement the socket file descriptor for IO stream operation. Would you please add it? Thanks!
import socket
s = socket.socket()
s.connect('localhost', 5432)
S = s.makefile()
# on Python2, the following works
print >>S, 'hello world'
S.flush()
# on Python3, the same thing does not work
print('hello world', file=S, flush=True)
It gives the following error:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
io.UnsupportedOperation: not writable
Luckily, the stream read operation works, S.readline() |