On 24/05/2017 16:41, Peter Otten wrote:
Dennis Lee Bieber wrote:

On Tue, 23 May 2017 21:42:45 +0100, bartc <b...@freeuk.com> declaimed the
following:

Is it necessary to sort them? If XXX is known, then presumably the first
file will be called XXX_chunk_0, the next XXX_chunk_1 and so on.


XXX_chunk_1
XXX_chunk_10
XXX_chunk_2

This is a problem you run into if you do sort the filenames (the wrong way,
alphabetically). If I understand Bart correctly he suggests something like

with open(DESTFILE, "wb") as outstream:
    for filename in map("XXX_chunk_{}".format, itertools.count()):
        try:
            with open(filename, "rb") as instream:
                shutil.copyfileobj(instream, outstream)
        except FileNotFoundError:
            break


Yes, that sort of thing, provided the first file end with _0, XXX is known, and the endings are consecutive and well-formed. I was going to post some code but wasn't sure how 'with' dealt with file errors:

 i = 0

 while 1:
     file = "XXX_chunk_"+str(i)
     print (file)
     with open(file) as inf:
       ....
     i += 1


--
bartc
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to