Как преобразовать этот список в читаемый формат в python - PullRequest
0 голосов
/ 21 июня 2020

У меня есть следующий вывод, сохраненный в списке python, и я хотел бы, чтобы он был в удобочитаемом формате; возможно, в формате xml, CSV или json. Как я могу это сделать? Как преобразовать и экспортировать требуемый формат.

Мой код

for i in range(1,param_data.shape[0]):
params[i]= dict(param_data.loc[i])
params[i].update(api_dict)
r = requests.get(url, params=params[i])
list1.append(r.content)

print (list1) Мой вывод:

[b'<tide>\n<locationdata>\n<nodata info=""/>\n</locationdata>\n</tide>', b'<tide>\n<locationdata>\n<nodata info=""/>\n</locationdata>\n</tide>', b'<tide>\n<locationdata>\n<nodata info=""/>\n</locationdata>\n</tide>', b'<tide>\n<locationdata>\n<nodata info=""/>\n</locationdata>\n</tide>', b'<tide>\n<locationdata>\n<nodata info=""/>\n</locationdata>\n</tide>', b'<tide>\n<locationdata>\n<nodata info=""/>\n</locationdata>\n</tide>', b'<tide>\n<locationdata>\n<location name="KRISTIANSUND" code="KSU" latitude="63.479150" longitude="8.117700" delay="0" factor="1.03" obsname="KRISTIANSUND" obscode="KSU"/>\n<reflevelcode>CD</reflevelcode>\n<data type="prediction" unit="cm">\n<waterlevel value="82.8" time="2017-06-04T16:00:00+01:00" flag="pre"/>\n</data>\n</locationdata>\n</tide>\n', b'<tide>\n<locationdata>\n<nodata info=""/>\n</locationdata>\n</tide>', b'<tide>\n<locationdata>\n<nodata info=""/>\n</locationdata>\n</tide>'

Ответы [ 2 ]

1 голос
/ 21 июня 2020

Эта b'string 'указывает байтовые данные. Вы можете преобразовать байтовые данные в строку.

for i in range(len(list1)):
    list1[i] = list1[i].decode("utf-8").strip()
0 голосов
/ 21 июня 2020

Было бы лучше, если бы вы сначала декодировали ответ и преобразовали его в json, а затем добавили его в список.

import json
data = json.loads(r.content.decode('utf-8'))
list1.append(data)    
...