Wersja najprostsza:
nr_pliku = 1 # domyślna wartość - na wypadek błędu przy wczytywaniu
try:
with open('config.txt', 'r') as f:
lines = [line.strip() for line in f]
nr_pliku = int(lines[0]) # zawartość pierwszej linii we wczytanym pliku konwertujemy na inta
except:
print('Error while reading configuration file!')
No i podobny kod dla zapisu aktualnego numeru pliku.
Zainteresuj się też plikami JSON, wczytanie i zapisanie konfiguracji jest wtedy bardzo proste i nie trzeba przejmować się ręczną konwersją plus kod ładujący/zapisujący jest dużo prostszy:
import json
# domyślna konfiguracja - na wypadek błędów przy wczytywaniu
configs = {
'nr_pliku': 1,
'inne_ustawienie': 1.25
}
# odczyt konfiguracji
try:
with open('config.json', 'r') as f:
configs = json.load(f)
except:
print('Error while reading configuration file!')
# zapis konfiguracji
try:
with open('config.json', 'w') as f:
json.dump(configs, f)
except:
print('Error while saving configuration file!')
Konfiguracja jest zapisywana w słowniku configs - jeśli będziesz potrzebował więcej zmiennych konfiguracyjnych wystarczy dodać je do tego słownika, a kod wczytujący/zapisujący zajmie się sam potrzebnymi konwersjami (pamiętaj tylko, że wtedy stary plik konfiguracyjny najprawdopodobniej nie będzie działać prawidłowo). Aby odwołać się do odpowiedniej zmiennej konfiguracyjnej:
configs['nr_pliku']
Możesz zainteresować się też modułem pickle.