Hello, >> I have read in documentation that wb+ mode is for writing and >> reading. Am i using wrong mode, should i use rb+ ? > >Use w+ to create a new file, opened with read and write access. Use >r+ to open an existing file with read and write access. Unlike w+, >r+ does not truncate the file and will not create a new file.
[snip] >FYI, in terms of POSIX open flags [1], the file mode gets mapped as follows: > > | flags | no + | + > ----------------------------------------- > r | | O_RDONLY | O_RDWR > w | O_CREAT, O_TRUNC | O_WRONLY | O_RDWR > a | O_CREAT, O_APPEND | O_WRONLY | O_RDWR > >Python 3 only: > > x | O_CREAT, O_EXCL | O_WRONLY | O_RDWR > >In terms of Windows open dispositions and access modes [2], the file >mode gets mapped as follows: > > | disposition | no + | + > --------------------------------------------------------------- > r | OPEN_EXISTING | GENERIC_READ | GENERIC_READ, GENERIC_WRITE > w | CREATE_ALWAYS | GENERIC_WRITE | GENERIC_READ, GENERIC_WRITE > a | OPEN_ALWAYS | GENERIC_WRITE | GENERIC_READ, GENERIC_WRITE > >Python 3 only: > > x | CREATE_NEW | GENERIC_WRITE | GENERIC_READ, GENERIC_WRITE The above is a very handy chart. Did you find this somewhere, eryk sun, or is this from your own knowledge and experience? This might benefit an experienced Windows/POSIX user trying to understand open() in Python if it were available in the standard documentation. Thanks for mapping this to common operating systems. I had inferred this already, but this is a great summary. -Martin -- Martin A. Brown http://linux-ip.net/ _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor