Форум сайта python.su
0
Добрый день!
Нужна помощь в решении очень нового для меня вопроса. Мне необходимо забрать данные из экселя, и эти данные затем преобразовать в формат JSON.
С первой частью я справился, забрал данные из экселя. Далее я на основании этих данных формирую словарь. Потом, методом to_json() вроде как преобразовываю эти данные в формат JSON.
Когда работаю с файлами где нет кириллицы, то всё нормально, а вот как появляется кириллица то начинается то, что я пока что объяснить не могу. Собственно я и хочу попросить вас помочь мне объяснить, что происходит и как это исправить.
Вот мой код:
import pandas as pd data_tech_regime = pd.read_excel('tech_regime_red_1.xlsx',sep = '/t') #забрал данные из экселя в датафрейм zagolovki_stolbcov = [] # в этом блоке получил список всех заголовков из таблицы for line in data_tech_regime: zagolovok = line.strip() zagolovki_stolbcov.append(zagolovok ) print (zagolovki_stolbcov) # тут я проверяю что заголовки забрал нормально data_for_json = data_tech_regime.groupby('Скв.')[zagolovki_stolbcov].apply(lambda x: x.set_index('Скв.').to_dict(orient='index')) #здесь формирую словарь на основании датафрейма #print (data_for_json) # словарь печатается нормально print(data_for_json.to_json()) # вот тут вывожу на экран результат преобразования и получается фигня
Прикреплённый файлы:
tech_regime_red_1.xlsx (10,0 KБ)
Офлайн
0
А получается такая вот фигня
Прикреплённый файлы:
Снимок.JPG (115,8 KБ)
Офлайн
72
В последней строке кода добавьте параметр force_ascii=False:
print(data_for_json.to_json(force_ascii=False)) # вот тут вывожу на экран результат преобразования и получается фигня
Офлайн
0
ramiБольшое спасибо!
В последней строке кода добавьте параметр force_ascii=False:
Офлайн