Перенести в файл JSON - PullRequest
       2

Перенести в файл JSON

0 голосов
/ 03 августа 2020

Я новичок в python и собираюсь перевести большой объем данных в определенный формат в Python. Данные выглядят так:

0(0127),0(0128),0(0129) (All in String), и я хочу, чтобы это изменение было

'0127': '0',
'0128': '0' ,
.....

. Мне интересно, есть ли хороший способ сделать это. Большое спасибо.

Ответы [ 3 ]

1 голос
/ 03 августа 2020

Вместо использования явного цикла (с for l oop et c) мы можем использовать уродливое, но простое понимание однострочного списка.

from json import dumps

# just using your example data 
s = "0(0127),0(0128),0(0129)"

# output is in correct JSON forma
output = dumps([{x.split('(')[1][:-1] : x.split('(')[0]} for x in s.split(',')])
1 голос
/ 03 августа 2020
string = '0(0127),0(0128),0(0129)'
dictionery = {}
for x in string.split(','):
    splitDictionery = x.replace('(', ' ').replace(')','').split(' ')
    dictionery[splitDictionery[1]] = splitDictionery[0]
0 голосов
/ 03 августа 2020

Я не уверен, как это будет работать с вашими большими данными. Но вы можете попробовать.

# load your data/string
inputString = "0(0127),0(0128),0(0129)"

# split by comma
splitCommaString = inputString.split(",")

# create a dictionary which you can dump as a json later
mydict = {}

# iterate on your comma separated list
for mystr in splitCommaString:
    val, key = mystr.split("(")
    key = key.rstrip(")")
    mydict[key] = val
# or you can dump it to a json using json module
print(mydict) 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...