0

I have a variable "case" that calls OrderedDict:

OrderedDict([('totalSize', 1),
         ('done', True),
         ('records',
          [OrderedDict([('attributes',
                         OrderedDict([('type', 'Case'),
                                      ('url',
                                       '/services/data/v38.0/sobjects/Case/5003700000ReKcJAAV')])),
                        ('Id', '5003700000ReKcJAAV')])])])

I want a variable 'Id' to return '5003700000ReKcJAAV'. Is there a way to do that?

I'm using Python 3.6.5

RomanK
  • 111
  • 1
  • 8

3 Answers3

1

This looks ugly but, works.

from collections import OrderedDict
z = OrderedDict([('totalSize', 1),
         ('done', True),
         ('records',
          [OrderedDict([('attributes',
                         OrderedDict([('type', 'Case'),
                                      ('url',
                                       '/services/data/v38.0/sobjects/Case/5003700000ReKcJAAV')])),
                        ('Id', '5003700000ReKcJAAV')])])])
print(z.get('records')[0].get('Id'))

Output:

5003700000ReKcJAAV
Soumendra
  • 1,518
  • 3
  • 27
  • 54
0

You can also try the below code.

from collections import OrderedDict
import json

l = [('totalSize', 1),
         ('done', True),
         ('records',
          [OrderedDict([('attributes',
                         OrderedDict([('type', 'Case'),
                                      ('url',
                                       '/services/data/v38.0/sobjects/Case/5003700000ReKcJAAV')])),
                        ('Id', '5003700000ReKcJAAV')])])]
ordDict = OrderedDict(l)

print json.dumps(ordDict, indent=4)
"""
{
    "totalSize": 1,
    "done": true,
    "records": [
        {
            "attributes": {
                "type": "Case",
                "url": "/services/data/v38.0/sobjects/Case/5003700000ReKcJAAV"
            },
            "Id": "5003700000ReKcJAAV"
        }
    ]
}
"""

print ordDict['records'][0]['Id'] # 5003700000ReKcJAAV
hygull
  • 8,464
  • 2
  • 43
  • 52
0

It was easier, then i was expecting. I just needed to:

Id = case['records'][0]['Id']
RomanK
  • 111
  • 1
  • 8