diff --git a/blah.txt b/blah.txt new file mode 100644 index 0000000..7f0de02 --- /dev/null +++ b/blah.txt @@ -0,0 +1,2 @@ +I10 +. \ No newline at end of file diff --git a/blah2.txt b/blah2.txt new file mode 100644 index 0000000..1cc9408 --- /dev/null +++ b/blah2.txt @@ -0,0 +1,2 @@ +I2 +. \ No newline at end of file diff --git a/counter.py b/counter.py index 1e2fb56..14b9f28 100644 --- a/counter.py +++ b/counter.py @@ -2,7 +2,7 @@ from os.path import exists import sys -from pickle import dump, load +import pickle def update_counter(file_name, reset=False): """ Updates a counter stored in the file 'file_name' @@ -26,10 +26,38 @@ def update_counter(file_name, reset=False): 1 >>> update_counter('blah.txt') 3 - >>> update_counter('blah2.txt') + >>> update_counter('blah.txt') + 4 + >>> update_counter('blah.txt') + 5 + >>> update_counter('blah.txt') + 6 + >>> update_counter('blah.txt') + 7 + >>> update_counter('blah.txt') + 8 + >>> update_counter('blah.txt') + 9 + >>> update_counter('blah.txt') #included to test two digit case + 10 + >>> update_counter('blah2.txt') 2 """ - pass + if exists(file_name) and reset==False: + f = open(file_name, 'r+') + f_read = f.read() + current = int(pickle.loads(f_read)) + current +=1 + f.seek(0,0) + pickle.dump(current, f) + f.close() + else: + f = open(file_name, 'w') + current = 1 + pickle.dump(current, f) + f.close() + return current + if __name__ == '__main__': if len(sys.argv) < 2: