Это должно быть довольно прямолинейно, однако у меня возникли проблемы с его работой. У меня следующий код ниже.Python, получив список в правильный формат JSON
У меня есть файл CSV из которых в колонке А, У меня есть следующие:
[11, 12, 14, 18, 19, 23, 43, 44]
В колонке Б, У меня есть следующие:
[2, 2, 2, 2, 2, 2, 2, 2]
Моя попытка:
import numpy
import csv
import json
f = open('C:\filepath\m.csv', 'r+')
csv_f = csv.reader(f, delimiter=',', quotechar='"')
new_list = []
new_list_two = []
for row in csv_f:
new_list.append(row[0])
new_list_two.append(row[1])
new_list_two= map(int, new_list_two)
new_list= map(int, new_list)
a = str(numpy.mean(new_list))
b = str(numpy.mean(new_list_two))
c = new_list + new_list_two
Следующий код вернет:
[11, 12, 14, 18, 19, 23, 43, 44, 2, 2, 2, 2, 2, 2, 2, 2]
Я хочу, чтобы мой код, чтобы назначить его в файл JSON, добавив его в словарь и имеющий выход, как например:
[
{
"September": 11,
"medium-critical": 2
},
{
"September": 12,
"medium-critical": 2
},
{
"September": 14,
"medium-critical": 2
},
{
"September": 18,
"medium-critical": 2
},
{
"September": 19,
"medium-critical": 2
},
{
"September": 23,
"medium-critical": 2
},
{
"September": 43,
"medium-critical": 2
},
{
"September": 44,
"medium-critical": 2
},
{
"September": 20,
"medium-critical": 3
},
{
"September": 32,
"medium-critical": 3
},
{
"September": 33,
"medium-critical": 3
},
{
"September": 54,
"medium-critical": 3
},
{
"September": 57,
"medium-critical": 3
},
{
"September": 69,
"medium-critical": 3
},
{
"September": 70,
"medium-critical": 3
},
{
"September": 73,
"medium-critical": 3
},
{
"September": 58,
"medium-critical": 6
},
{
"September": 66,
"medium-critical": 6
},
{
"September": 100,
"medium-critical": 7
},
{
"September": 68,
"medium-critical": 9
},
{
"August": 23,
"medium-critical": 2
},
{
"August": 44,
"medium-critical": 2
},
{
"August": 19,
"medium-critical": 2
},
{
"August": 18,
"medium-critical": 2
},
{
"August": 43,
"medium-critical": 2
},
{
"August": 48,
"medium-critical": 2
},
{
"August": 53,
"medium-critical": 3
},
{
"August": 67,
"medium-critical": 3
},
{
"August": 20,
"medium-critical": 3
},
{
"August": 66,
"medium-critical": 3
},
{
"August": 34,
"medium-critical": 3
},
{
"August": 60,
"medium-critical": 3
},
{
"August": 75,
"medium-critical": 3
},
{
"August": 49,
"medium-critical": 3
}
]
я попытался запустить список «с» через для но не смогли получить правильное выполнение задания.
Что-то вроде этого:
with open('C:\filepath\m.csv') as f:
mydict=dict(csv.reader(f))
mydict['mean b'] = b
mydict['mean a'] = a
mydict = [mydict]
print mydict
new_dict = {}
for i in mydict:
new_dict[]
with open('C:\filepath\jsonfile.json', 'w') as q:
json.dump(mydict, q)
Есть ли лучший способ, чтобы получить желаемый результат?
то, что вы получаете в качестве вывода? как вы получаете имена ключей в вашем json-файле? –
Этот последний фрагмент не похож, что в этом цикле отсутствуют некоторые бит. Он также имеет некоторые недействительные дополнительные отступы в инструкции 'print'. – roeland