简体   繁体   中英

Reformat JSON file in Python

I have a JSON file of the following format:

[
{"url": "example1.com", "date": "Jan 1", "text": "Example text 1"},
{"url": "example2.com", "date": "Jan 2", "text": "Example text 2"}
]

Which I upload into Python using:

with open("data.json") as data:
    data = json.load(data)

I would like to reformat the uploaded data to the following format:

[
   (
    "Example text 1", 
    {"url": "example1.com", "date": "Jan 1"}
   ),
   (
    "Example text 2", 
    {"url": "example2.com", "date": "Jan 2"}
   )
]

Try this

data = [
{"url": "example1.com", "date": "Jan 1", "text": "Example text 1"},
{"url": "example2.com", "date": "Jan 2", "text": "Example text 2"}
]

# make tuples
[(d.pop('text'), d) for d in data]

# [('Example text 1', {'url': 'example1.com', 'date': 'Jan 1'}),
#  ('Example text 2', {'url': 'example2.com', 'date': 'Jan 2'})]

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM