Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from sys import exit
- def leggifile(nomefile):
- lines = []
- try:
- miofile = open(nomefile)
- miofile.close()
- except FileNotFoundError:
- x = input("File non trovato...")
- sys.exit(1)
- else:
- for l in open(nomefile):
- lines.append(l.strip())
- return lines
- def scrivifile(nomefile, lista):
- miofile = open(nomefile, "w")
- for cont in lista:
- miofile.writelines(cont + "\n")
- miofile.close()
- print("File modificato con successo")
- def codifica(riga, chiave):
- return ''.join([chr(ord(lettera) + chiave) for lettera in riga])
- def decodifica(riga, chiave):
- return ''.join([chr(ord(lettera) - chiave) for lettera in riga])
- def main():
- scelta = input("Vuoi criptare o decriptare? (C/D): ")
- while scelta != "C" and scelta != "c" and scelta != "D" and scelta != "d":
- scelta = input("Dato non valido, reinserire (C/D): ")
- nomefile = input("Inserisci il nome del file: ")
- chiave = int(input("Inserisci la chiave da 0 a 255: "))
- while chiave > 255:
- chiave = int(input("La chiave dev'essere un valore tra 0 e 255: "))
- linee = leggifile(nomefile)
- nuovofile = []
- if scelta == "C" or scelta == "c":
- for x in linee:
- stringa = codifica(x, chiave)
- nuovofile.append(stringa)
- if scelta == "D" or scelta == "d":
- for x in linee:
- stringa = decodifica(x, chiave)
- nuovofile.append(stringa)
- scrivifile(nomefile, nuovofile)
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement