Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- first_use = raw_input("E prima data cand folositi memoratorul? (da sau nu): ")
- print ("Nu uitati, in modul \"Consultati memoratorul\" sau \"Stergeti elemente din memorator\" puteti tasta comanda \"help\" pentru a primi o lista cu toate cheile din memorator\n")
- filename = "memorator.txt"
- print ("\n1. Introduceti o valoare in memorator\n2. Consultati memoratorul\n3. Stergeti elemente din memorator\n4. Parasiti programul\n")
- optiune = input ("Introduceti optiunea: ")
- memo ={}
- while optiune != 4:
- if optiune == 1:
- if first_use == 'nu':
- # deschidem fisierul pentru citire doar daca avem nevoie
- # daca deschidem in paralel si pentru scriere atunci acesta va fi golit de 'w'
- # iar read logic ca va returna '' -> eroare in eval
- f = open(filename, "r")
- memo = eval(f.read().strip())
- f.close()
- g = open(filename, "w")
- key = raw_input("Introduceti o valoare cheie: ")
- value = raw_input("Introduceti o valoare corespondenta cheii: ")
- temp = {key:value}
- memo.update(temp)
- g.write(str(memo))
- g.close()
- elif optiune == 2:
- f = open(filename, "r")
- memo = eval(f.read().strip())
- key = raw_input("Introduceti cheia dupa care doriti sa se efectueze cautarea: ")
- if key == 'help':
- print (memo.keys())
- print ("\n")
- elif key in memo == 0:
- print ("Cheia nu se afla in memorator\n")
- else:
- print (memo[key])
- f.close()
- elif optiune == 3:
- f = open(filename, "r")
- memo = eval(f.read().strip())
- f.close()
- key = raw_input("Introduceti cheia care doriti sa fie eliminata din memorator: ")
- if key == 'help':
- print (memo.keys())
- print ("\n")
- elif key in memo == 0:
- print ("Cheia nu se afla in memorator\n")
- else:
- del memo[key]
- print ("Cheia a fost stearsa\n")
- # asa si aici ... conteaza foarte mult ordinea
- # sa nu deschizi niciodata in fisier in paralel si pentru scriere si pentru citire
- # in cel mai rau caz folosesti modul 'r+' ce iti permite sa chemi pe acelasi obiect
- # si write si read, dar atentie ca atunci cand scrii ceva daca vrei sa citesti
- # de la capat trebuie sa dai seek(0) ca altfel iti citeste de la sfarsit si face overflow
- g = open(filename, "w")
- g.write(str(memo))
- g.close()
- else:
- print ("Optiunea selectata nu exista\n\n")
- optiune = input ("\nIntroduceti optiunea: ")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement