banana.py 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #!/usr/bin/env python3
  2. def dec2banana(num, dictstart = 0, shiftend = 0, minlength = 0, dictionary = [list("bcdfglmnprstvz"), list("aeiou")]):
  3. numdict = len(dictionary)
  4. v = num
  5. st = ""
  6. l = 0
  7. i = (numdict - 1 + dictstart + shiftend) % numdict
  8. while not (v == 0 and i == (numdict - 1 + dictstart) % numdict and l >= minlength):
  9. r = v % len(dictionary[i])
  10. v = int(v / len(dictionary[i]))
  11. st = dictionary[i][r] + st
  12. i = (i - 1) % numdict
  13. l += 1
  14. return(st)
  15. def banana2dec(banana, dictstart = 0, shiftend = 0, dictionary = [list("bcdfglmnprstvz"), list("aeiou")] ):
  16. numdict = len(dictionary)
  17. v = 0
  18. for i in range(len(banana)):
  19. r = (numdict + i + dictstart) % numdict
  20. try:
  21. v = v * len(dictionary[r]) + dictionary[r].index(banana[i])
  22. except:
  23. print("Carattere non valido in posizione", i+1)
  24. return()
  25. return(v)
  26. if __name__ == "__main__":
  27. print("Ciao sono la libreria banana")