On 04/01/17 02:10, Deborah Swanson wrote:
Sayth Renshaw wrote, on January 03, 2017 5:36 PM

So can I call the generator twice and receive the same file
twice in 2 for loops?

Once to get the files name and the second to process?

 for file in rootobs:
        base = os.path.basename(file.name)
        write_to = os.path.join("output",
os.path.splitext(base)[0] + ".csv")
        with open(write_to, 'w', newline='') as csvf:
            for file in rootobs:
              # create and write csv

Cheers

Sayth

I don't see why not, if you let the first one run to completion and then
do it again a second time. Assuming your generator doesn't somehow
delete or modify the file specifications as it yields them. It would be
helpful to see the code for rootobs, if you have it.

Ahem. If Sayth is using the correct terminology and rootobs actually is a generator (not, say, a list or tuple), then no it won't work. Once a generator is exhausted, it's exhausted. Besides, the nested for-loops over the same iterable is a dead giveaway that something is wrong.


--
Rhodri James *-* Kynesim Ltd
--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to