In article <mailman.15802.1415923204.18130.python-l...@python.org>, Ben Finney <ben+pyt...@benfinney.id.au> wrote:
> satishmlm...@gmail.com writes: > > > import os > > os.write(1, b'Hello descriptor world\n') > > OSError: Bad file descriptor > > It works fine for me:: > > >>> import os > >>> os.write(1, b'Hello descriptor world\n') > Hello descriptor world > 23 > > You don't say which Python, or which version, you're using. In the > absence of different information, most of us will assume the latest > stable release of CPython. Currently, that is CPython 3.4. I don't think this has anything to do with which version of Python he's using. I think all that's happening is (for some unknown reason), fd 1 is closed before his program runs. You can demonstrate this, for example, in bash: $ cat hello.py import os os.write(1, b'Hello descriptor world\n') $ python hello.py Hello descriptor world $ 1<&- python hello.py Traceback (most recent call last): File "hello.py", line 2, in <module> os.write(1, b'Hello descriptor world\n') OSError: [Errno 9] Bad file descriptor You owe the Oracle 5 minutes of his life back and a cookie for making him read enough of the bash manual to figure out the syntax to tell it to close a descriptor. -- https://mail.python.org/mailman/listinfo/python-list