Negroup - wrote: > read(...) > read([size]) -> read at most size bytes, returned as a string. > > If the size argument is negative or omitted, read until EOF is reached. > Notice that when in non-blocking mode, less data than what was requested > may be returned, even if no size parameter was given. > > Hi tutors. > What does "blocking-mode" mean, and how can I be sure that when > reading a file I'm not in such modality (and eventually switch)? I > need to read the whole content of a file, not just some pieces.
I don't know how to put a file in non-blocking mode but you don't have to worry about it for common usage. Use f.read() (with no arguments) to read the whole contents of a file. > > Another question. Python tutorial states: > > "To read a file's contents, call f.read(size), which reads some > quantity of data and returns it as a string. size is an optional > numeric argument. When size is omitted or negative, the entire > contents of the file will be read and returned; it's your problem if > the file is twice as large as your machine's memory." > > What does exactly mean that it's my problem (crash? an exception will > be raised? fire and flames? xyz?). How can my recognize a "too big > file" before read it? My guess is that it will raise MemoryError but I don't know for sure. Use os.path.getsize() to find out how big a file is. Kent _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor