Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Loader:
- def __init__(self, file_name):
- self.file_name = file_name
- class JsonLoader(Loader):
- def __init__(self, file_name):
- super().__init__(file_name)
- def load(self):
- with open(self.file_name) as f:
- input_data = json.load(f)
- return input_data
- class YamlLoader(Loader):
- def __init__(self, file_name):
- super().__init__(file_name)
- def load(self):
- with open(self.file_name) as f:
- load_input = yaml.load(f)
- return load_input
- LOADERS = {
- ".json": JsonLoader,
- ".yaml": YamlLoader
- }
- def main():
- if len(sys.argv) < 2:
- print("Usage: {} input-file.json".format(sys.argv[0]))
- return 1
- try:
- input_filename = sys.argv[1]
- file_ext = os.path.splitext(input_filename)[1]
- if file_ext in LOADERS:
- loader = LOADERS[file_ext]
- loader_instance = loader(input_filename)
- result = loader_instance.load
- sys.exit(result) // exit-вам тука, че съм в друг скрипт и има още булшит надолу. Аутпута е result-а
- input_data = load_input_data(sys.argv[1])
- draw_figures(input_data)
- except Exception as e:
- print("Invalid input file provided! Error: " + str(e))
- return 2
- if __name__ == "__main__":
- sys.exit(main())
- ####################
- # python main.py input.json
- # <bound method JsonLoader.load of <__main__.JsonLoader object at 0x00000026A3218C50>>
- ####################
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement