From f9754521c3928a5f8171681db295d5e9c756f855 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=BAcio=20Carvalho=20Almeida?= Date: Wed, 31 Dec 2025 19:05:44 -0300 Subject: [PATCH] =?UTF-8?q?separa=C3=A7=C3=A3o=20de=20leitura=20de=20arqui?= =?UTF-8?q?vo=20em=20fun=C3=A7=C3=A3o=20'load=5Ffile=5Flines'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- microw.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/microw.py b/microw.py index 1450af1..adbf4e7 100644 --- a/microw.py +++ b/microw.py @@ -187,14 +187,15 @@ class Config: self._validate_setting(setting) return self.flags[setting]["schema"] - -def parse_data_to_accounts(config: Config) -> list[dict[str, str]]: +def load_file_lines(config: Config) -> list[str]: input_file = Path(config.get(Flags.INPUT_FILE)) if not input_file.exists(): error_msg = f"Arquivo de input especificado '{input_file.name}' não encontrado." raise ValueError(error_msg) input_lines = [line.strip() for line in input_file.open("r", encoding=config.get(Flags.READ_ENCODING)).readlines()] + return input_lines +def parse_data_to_accounts(config: Config, input_lines: list[str]) -> list[dict[str, str]]: accounts_settings = [] columns = config.get(Flags.COLUMNS).split(" ") label_pattern = config.get(Flags.LABEL_PATTERN) @@ -264,8 +265,9 @@ if __name__ == "__main__": if config.get(Flags.HELP): print(config.generate_flags_man()) sys.exit(0) - - accounts = parse_data_to_accounts(config) + + input_lines = load_file_lines(config) + accounts = parse_data_to_accounts(config, input_lines) output_file = Path(config.get(Flags.OUTPUT_FILE)) content = build_content(config, accounts) output_file.write_text(content, encoding=config.get(Flags.WRITE_ENCODING))