Файлы данных JSON в Python - PullRequest
       13

Файлы данных JSON в Python

0 голосов
/ 20 января 2019

Я новичок в Python и пишу скрипт командной строки, который читает и записывает простые данные в файл JSON.

Есть ли лучший способ реализовать файл JSON для ввода / вывода данных? Интересно, что считается лучшей практикой в ​​этом случае?

wt.py (скрипт)

## imports...


XDG_DATA_HOME = os.environ.get(
    'XDG_DATA_HOME', 
    os.path.join(os.path.expanduser('~'), '.local/share')
)
DATA_DIR = os.path.join(XDG_DATA_HOME, 'wt')
DATA_FILENAME = 'data.json'
DATA_FILE = os.path.join(DATA_DIR, DATA_FILENAME)

if not os.path.exists(DATA_DIR):
   os.makedirs(DATA_DIR)
if not os.path.exists(DATA_FILE):
    with open(DATA_FILE, 'w') as jfile:
        json.dump([], jfile)

## Functions below...

test_wt.py (я реализовал временный файл с временным файлом, как предложено olinox14 в разделе комментариев.)

import unittest
from tempfile import NamedTemporaryFile
# more imports...
from . import wt

class WhatTimeTest(unittest.TestCase):

def setUp(self):
    # Create empty json file for each test
    temp = NamedTemporaryFile(mode='w+t', delete=False)
    with temp as jfile:
        json.dump([], jfile)
    wt.DATA_FILE = temp.name

def tearDown(self):
    os.remove(wt.DATA_FILE)

## tests below...

Заранее спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...