title: Mapping values of a dictionary to new dictionary with new keys
body: <p>I am reading table data from pdf files and then converting that table data into a dataframe and then into a dictionary. My problem is each time reading a table data keys of the dictionary are not fixed like it has some times keys like {'Sno':1,'ItemDescription':'ABC'} and sometimes it has {'Sl No':1,'Description':'XYZ'}. I wanted to create a new dictionary which has fixed keys like below where keys are the left side part and the right side part are the keys extracted from dataframe, so if it matches with in the list, values should map to the new keys.</p>
  
  <pre><code>Srno = ["Sno", "Sl No.", "Order No.", "PO No."]
  Productdescription = ["Item Code / Product Description", "Description", "Description of Goods", "Particulars"]
  HSNCode = ["HSN / SAC\nCode", "HSN Code", "HSN", "HSN/SAC"]
  Quantity = ["Quantity"]
  ASIN = ["ASIN"]
  ISBN = ["ISBN/EAN/UPC"]
  Rate = ["Unit Price\n[INR]", "Rate", "Unit cost", "List price"]
  Tax = ["IGST[INR]\nAmount", "Tax rate", "Tax type", "Tax amount"]
  Discount = ["Discount", "Disc. %"]
  Total = ["Total amount", "Amount", "Total", "Total\n[INR]", "Line Total\n[INR]"]
  Model = ["Model #"]
  </code></pre>
  
  <p>Here is the sample of dictionary which is created from the dataframe.</p>
  
  <pre><code>{'item': [{'Sno': 1,
     'ItemCodeProductDescription': 'TGMOCL0015CORSAIRMOUSE,M55RGBPRO,PART#CH-9308011-AP',
     'HSNSACCode': '8471.60.60',
     'Quantity': 7,
     'UnitPrice': 1741,
     'Total': 12187,
     'Rate': 18,
     'LineTotal': 14380.66},
    {'Sno': 2,
     'ItemCodeProductDescription': 'TGMOCL0013CORSAIRMOUSE,HARPOONPRO-BLK-RGB,PART#CH-9301111-AP',
     'HSNSACCode': '8471.60.60',
     'Quantity': 8,
     'UnitPrice': 1200,
     'Total': 9600,
     'Rate': 18,
     'LineTotal': 11328.0},
    {'Sno': 3,
     'ItemCodeProductDescription': 'TGCBCL0029CORSAIRCABINETSPEC-05,BLK-PART#CC-9011138-WW',
     'HSNSACCode': '8473.30.99',
     'Quantity': 37,
     'UnitPrice': 2225,
     'Total': 82325,
     'Rate': 18,
     'LineTotal': 97143.5},
    {'Sno': 4,
     'ItemCodeProductDescription': 'TGHSCL0003CORSAIRGAMINGHEADSETHS50StereoCarbonPART#CA-9011170-AP',
     'HSNSACCode': '8518.30.00',
     'Quantity': 92,
     'UnitPrice': 3000,
     'Total': 276000,
     'Rate': 18,
     'LineTotal': 325680.0},
    {'Sno': 5,
     'ItemCodeProductDescription': 'TGMOCL0001CORSAIRMOUSE,HARPOON-BLK-RGB,PART#CH-9301011-AP',
     'HSNSACCode': '8471.60.60',
     'Quantity': 43,
     'UnitPrice': 1018,
     'Total': 43774,
     'Rate': 18,
     'LineTotal': 51653.32},
    {'Sno': 6,
     'ItemCodeProductDescription': 'TGKBCL0001CORSAIRKEYBOARDK95PLTN-BLK-MXSpeed-RGBPART#CH-9127014-NA',
     'HSNSACCode': '8471.60.40',
     'Quantity': 8,
     'UnitPrice': 10750,
     'Total': 86000,
     'Rate': 18,
     'LineTotal': 101480.0},
    {'Sno': 7,
     'ItemCodeProductDescription': 'TGKBCL0007CORSAIRKEYBOARDK55-BLK-RBRDME-RGBPART#CH-9206015-NA',
     'HSNSACCode': '8471.60.40',
     'Quantity': 14,
     'UnitPrice': 2400,
     'Total': 33600,
     'Rate': 18,
     'LineTotal': 39648.0}]}
  </code></pre>
  
  <p>The final dictionary should be like this</p>
  
  <pre><code>{'item': [{'Srno': 1,
         'ProductDescription': 'TGMOCL0015CORSAIRMOUSE,M55RGBPRO,PART#CH-9308011-AP',
         'HSNCode': '8471.60.60',
         'Quantity': 7,
         'ASIN':Null 
         'ISBN':Null
         'Rate': 1741,
         'Discount':Null,
         'Model':Null,
         'Tax': 18,
         'Total': 14380.66}
  </code></pre>
  
  <p>Please suggest efficient way of creating a new dictionary from the old one.</p>