open() and EOFError

Chris Angelico rosuav at gmail.com
Tue Jul 8 17:49:38 CEST 2014


On Wed, Jul 9, 2014 at 1:46 AM, Tim Chase <python.list at tim.thechases.com> wrote:
> On 2014-07-09 01:24, Chris Angelico wrote:
>> On Wed, Jul 9, 2014 at 1:20 AM, Tim Chase
>> > Okay, EOF is the canonical way to tell a program reading stdin
>> > that you're done.  It just happens that EOF ^D on *nix-likes and
>> > ^Z on Win32. :-)
>> >
>> > -tkc
>>
>> I can't think of any Windows-native programs that ask for EOF. Only
>> those which came from POSIX platforms do it. That said, though,
>> Windows doesn't tend to encourage interactive command-line programs
>> at all, so you may as well just follow the Unix convention.
>
> There was a time in life where I used "copy con output.txt" on a
> disturbingly frequent basis.  Control+Z ended my file for me.
>

Yes, and I've done that with a few programs (sort comes to mind; also
Regina Rexx, because it lacked a true interactive interpreter), but
not interactive ones. Those programs are filters, so obviously EOF is
the way to signal, well, end of file.

(Have you ever used COPY CON to create a binary file?)

ChrisA



More information about the Python-list mailing list