On Sun, 9 Oct 2005, Roel Schroeven wrote:
> Danny Yoo wrote: > > Looking at pageimgs(): I'm not sure what 't' means in the open statement: > > > > f = open(filename, "rt") > > > > and I think that 't' might be a typo: I'm surprised that Python doesn't > > complain. Can anyone confirm this? I think you may have tried to do "r+" > > mode, but even then, you probably don't: you're just reading from the > > file, and don't need to write back to it. > > It's not a typo. 't' opens the file in text mode. It doesn't make any > difference on Unix, but it does on Windows. Hi Roel, Ah, ok, thank you! Even so, I don't see this 't' option documented in the reference docs though, although now I see a reference to this on: http://mail.python.org/pipermail/python-list/2004-September/241444.html This is odd that it's not documented in the reference manual. >From the thread on python-list, it sounded like they left it at depending on the user to know that 't' is a Windows-specific thing. But that just feels off to me: Python's open(), I think, should at least generalize it so that 't' is explicitely defined in the documentation. ... Wow. open() actually does seem like a VERY thin wrapper around the underlying platforms fopen(). For example, on my Linux 2.6 system: ###### >>> open("/etc/passwd", "rfoobar!") <open file '/etc/passwd', mode 'rfoobar!' at 0x403984e0> ###### So if the underlying fopen() is permissive, we don't see errors. But I really think Python should be more strict than the platform. I'll put it on my TODO to check to see if this is registered as a bug in SF. _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor