Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python Error: io.UnsupportedOperation: fileno

Tags:

I am using a server and the client programs from this link: http://www.bogotobogo.com/python/python_network_programming_tcp_server_client_chat_server_chat_client_select.php

When I run the client I encounter the following error:

Traceback (most recent call last):   File "client.py", line 26, in client     read_sockets, write_sockets, error_sockets =     select.select(socket_list , [], []) io.UnsupportedOperation: fileno 

I am using Python 3, but I have changed all lines using print from Python 2 to 3.

Here is the code:

while 1:         socket_list = [sys.stdin, s]         # Get the list sockets which are readable         read_sockets, write_sockets, error_sockets = select.select(socket_list , [], []) 
like image 896
mee Avatar asked Jun 26 '15 19:06

mee


1 Answers

While the fileno() method works on normal IO objects (sys.stdout, sys.stderr, sys.stdin and socket.socket), the IDLE Python IDE changes your IO objects which breaks this.

So... if you get this error, run the command from straight up Python instead.

like image 87
Wolph Avatar answered Oct 11 '22 12:10

Wolph