Guest User

Untitled

a guest
Nov 22nd, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. #!/usr/bin/env python
  2. """TransPerm
  3.  
  4. Tool that translates base-1 'tasks' to base-0 'tasks' and vice versa. A task is
  5. a underscore separated list of permutations.
  6.  
  7. Usage:
  8. transperm (-0 | -1) [TASK ...]
  9. transperm (-h | --help)
  10.  
  11. Options:
  12. -h --help Show this screen
  13.  
  14. Happy birthday Henning!
  15. """
  16. import sys
  17. import re
  18. from permuta import Perm
  19. from docopt import docopt
  20.  
  21. if __name__ == "__main__":
  22. arguments = docopt(__doc__, version='TransPerm 0.0.1')
  23. if arguments['TASK']:
  24. tasks = arguments['TASK']
  25. else:
  26. tasks = sys.stdin.readlines()
  27. for task in tasks:
  28. out = []
  29. for perm in map(Perm.to_standard, re.split("[^0-9]", task)):
  30. if arguments['-1']:
  31. out.append(''.join(str(int(p) + 1) for p in perm))
  32. else:
  33. out.append(''.join(str(p) for p in perm))
  34. sys.stdout.write('_'.join(out))
  35. sys.stdout.write('\n')
Add Comment
Please, Sign In to add comment