Home > Software engineering >  how do I check the complete array?
how do I check the complete array?

Time:02-16

I am trying to check for the data-id is equal or not from the given list array

how do I check the complete array to know where the id is found or not?

order_id= 121553197332
inf = {data of array given below}
    if inf[n]["id"] == order_id:
     info = inf[n]["info"]
    elif 
       do someting here

return (info)

the array in need to check?

[{'amount': 0.3,
  'id': '121553197332',
  'info': {'avgFillPrice': None,
   'id': '121553197332',
   'ioc': False,
   'liquidation': False,
   'market': 'FTT/USD',
   'postOnly': True,
   'price': '40.0',
   'reduceOnly': False,
   'remainingSize': '0.3',
   'side': 'buy',
   'size': '0.3',
   'status': 'open',
   'type': 'limit'},
  'side': 'buy',
  'status': 'open',
  'stopPrice': None,
  'symbol': 'FTT/USD',
  'trades': [],
  'type': 'limit'},
 {'amount': 0.3,
  'id': '121553197726',
  'info': {'avgFillPrice': None,
   'future': None,
   'id': '121553197726',
   'ioc': False,
   'liquidation': False,
   'market': 'FTT/USD',
   'postOnly': True,
   'price': '40.062',
   'side': 'buy',
   'size': '0.3',
   'status': 'open',
   'type': 'limit'},
  'postOnly': True,
  'price': 40.062,
  'remaining': 0.3,
  'side': 'buy',
  'status': 'open',
  'stopPrice': None,
  'symbol': 'FTT/USD',
  'trades': [],
  'type': 'limit'}]

I need to return the info of the array at last.

CodePudding user response:

You Can try use a for loop like this:

inf = [{ 'amount': 0.3,
         'id': '121553197332',
         'info': { 'avgFillPrice': None,
                   'id': '121553197332',
                   'ioc': False,
                   'liquidation': False,
                   'market': 'FTT/USD',
                   'postOnly': True,
                   'price': '40.0',
                   'reduceOnly': False,
                   'remainingSize': '0.3',
                   'side': 'buy',
                   'size': '0.3',
                   'status': 'open',
                   'type': 'limit' },
         'side': 'buy',
         'status': 'open',
         'stopPrice': None,
         'symbol': 'FTT/USD',
         'trades': [],
         'type': 'limit' },
       { 'amount': 0.3,
         'id': '121553197726',
         'info': { 'avgFillPrice': None,
                   'future': None,
                   'id': '121553197726',
                   'ioc': False,
                   'liquidation': False,
                   'market': 'FTT/USD',
                   'postOnly': True,
                   'price': '40.062',
                   'side': 'buy',
                   'size': '0.3',
                   'status': 'open',
                   'type': 'limit' },
         'postOnly': True,
         'price': 40.062,
         'remaining': 0.3,
         'side': 'buy',
         'status': 'open',
         'stopPrice': None,
         'symbol': 'FTT/USD',
         'trades': [],
         'type': 'limit' }]

order_id= 121553197332
for inner_data in inf:
    if inner_data['id'] == order_id:
        print(inner_data)
        info = inner_data["info"]

CodePudding user response:

Use next:

# Sample data (reduced)
orders = [{
  'id': '121553197332',
  'info': { 'id': '121553197332' },
}, {
  'id': '121553197726',
  'info': { 'id': '121553197726' },
}]
# The order to find
order_id = 121553197332
# Find it
found = next((d for d in orders if int(d["id"]) == order_id), None)

CodePudding user response:

try to use a for loop

inf = []
for i in inf:
    ... # your code here

CodePudding user response:

Here is the snippet that is ready to run. target variable is the one you are searching for in the records.

data = [{'amount': 0.3,
  'id': '121553197332',
  'info': {'avgFillPrice': None,
   'id': '121553197332',
   'ioc': False,
   'liquidation': False,
   'market': 'FTT/USD',
   'postOnly': True,
   'price': '40.0',
   'reduceOnly': False,
   'remainingSize': '0.3',
   'side': 'buy',
   'size': '0.3',
   'status': 'open',
   'type': 'limit'},
  'side': 'buy',
  'status': 'open',
  'stopPrice': None,
  'symbol': 'FTT/USD',
  'trades': [],
  'type': 'limit'},
 {'amount': 0.3,
  'id': '121553197726',
  'info': {'avgFillPrice': None,
   'future': None,
   'id': '121553197726',
   'ioc': False,
   'liquidation': False,
   'market': 'FTT/USD',
   'postOnly': True,
   'price': '40.062',
   'side': 'buy',
   'size': '0.3',
   'status': 'open',
   'type': 'limit'},
  'postOnly': True,
  'price': 40.062,
  'remaining': 0.3,
  'side': 'buy',
  'status': 'open',
  'stopPrice': None,
  'symbol': 'FTT/USD',
  'trades': [],
  'type': 'limit'}]

target= '121553197726'
for d in data:
    if d['id']==target:
        info = d["info"]
        print(info)
    else:
        pass
  • Related