1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
class Foo(object):
def __init__(self):
self.source = "filename.txt"
self.counter = 0
def get_next_filename(self, filename):
fname = filename
while 1:
while os.path.isfile(fname):
self.counter += 1
caput, cauda = os.path.splitext(filename)
fname = caput + str(self.counter) + cauda
yield fname
def baz(self):
gen = self.get_next_filename(self.source)
text = "Lorem ipsum ..."
for i in range(5):
print(i)
with open(next(gen), "w") as outf:
outf.write(text)
f = Foo()
f.baz() |
Partager