a.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import os, argparse, re
  2. def solve_task(lines):
  3. current_path = "/"
  4. file_system = FolderNode()
  5. for line in lines:
  6. m = re.match("$ cd (.+)", line)
  7. if (m):
  8. # cd command
  9. continue
  10. m = re.match("(\d+) (.+)", line)
  11. if (m):
  12. # file entry
  13. continue
  14. class Node:
  15. def __init__(self, parent):
  16. if parent:
  17. self.parent = parent
  18. else:
  19. self.parent = self
  20. class FileNode(Node):
  21. def __init__(self, parent):
  22. super().__init__(parent)
  23. class FolderNode(Node):
  24. def __init__(self, parent = None):
  25. super().__init__(parent)
  26. self.children = []
  27. def add(self, file, destinationFolder):
  28. destinationFolder.split('/', 1)
  29. pass
  30. def read_lines(filename):
  31. lines = []
  32. with open(filename) as infile:
  33. for raw_line in infile:
  34. line = raw_line.rstrip()
  35. lines.append(line)
  36. return lines
  37. def parse_arguments():
  38. parser = argparse.ArgumentParser(description="Script that solves the case",epilog="Have a nice day!")
  39. parser.add_argument('filename', nargs='?', default="example.txt", help='Input file')
  40. args = parser.parse_args()
  41. return args
  42. def main():
  43. args = parse_arguments()
  44. lines = read_lines(args.filename)
  45. solve_task(lines)
  46. if __name__ == "__main__":
  47. main()