|
import json |
|
from pathlib import Path |
|
from typing import Union |
|
|
|
|
|
def json_load(json_pth: Union[Path, str]): |
|
if not isinstance(json_pth, str): |
|
json_pth = str(json_pth) |
|
with open(json_pth) as f: |
|
data = json.load(f) |
|
return data |
|
|
|
|
|
def json_dump(data, json_pth: Union[Path, str]): |
|
if not isinstance(json_pth, str): |
|
json_pth = str(json_pth) |
|
with open(json_pth, "w") as f: |
|
json.dump(data, f, indent=2) |
|
|
|
|
|
def read_txt(txt_pth: Union[Path, str]) -> list: |
|
with open(txt_pth) as f: |
|
lines = f.read().split("\n") |
|
return lines[:-1] |
|
|
|
|
|
def write_txt(data, txt_pth: Union[Path, str]): |
|
with open(txt_pth, "w") as f: |
|
for item in data: |
|
f.write("%s\n" % item) |
|
|