Skip to main content
 首页 » 编程设计

Python列表拆分

2025年05月04日14del

我只想保留 name 和 value(键值对) 这是列表。

[{u'domain': u'.facebook.com', 
  u'expiry': None, 
  u'name': u'c_user', 
  u'path': u'/', 
  u'secure': True, 
  u'value': u'100001724251788'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': None, 
  u'name': u'csm', 
  u'path': u'/', 
  u'secure': False, 
  u'value': u'2'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': 1441116441, 
  u'name': u'datr', 
  u'path': u'/', 
  u'secure': False, 
  u'value': u'AUojUqoBUYA2wj4j04GT5XvX'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': 1441116442, 
  u'name': u'lu', 
  u'path': u'/', 
  u'secure': False, 
  u'value': u'RitwQJMNRJ8siUh_9eIj4SMw'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': None, 
  u'name': u's', 
  u'path': u'/', 
  u'secure': True, 
  u'value': u'Aa7ebY1RvmeilCX8.BSI0od'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': None, 
  u'name': u'xs', 
  u'path': u'/', 
  u'secure': True, 
  u'value': u'62%3AjNm_3ySkegf7cg%3A2%3A1378044445%3A10945'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': 1380636479, 
  u'name': u'fr', 
  u'path': u'/', 
  u'secure': False, 
  u'value': u'0aU8cfDygWXo1ETQA.AWV9BQIzKARYURFpuxUdXLoXcl8.BSI0od.j_.FIj.AWXjyq2t'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': None, 
  u'name': u'sub', 
  u'path': u'/', 
  u'secure': False, 
  u'value': u'64'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': None, 
  u'name': u'p', 
  u'path': u'/', 
  u'secure': False, 
  u'value': u'125'}, 
 {u'domain': u'.facebook.com', 
  u'expiry': None, 
  u'name': u'presence', 
  u'path': u'/', 
  u'secure': True, 
  u'value': u'EM378046939EuserFA21B01724251788A2EstateFDsb2F0Et2F_5b_5dElm2FnullEuct2F1378043847BEtrFnullEtwF2448105081EatF1378046499377G378046939504CEchFDp_5f1B01724251788F13CC'}] 
[Dbg]>>> type(cookies) 
<type 'list'> 
[Dbg]>>> newlist = [{'domain': i['domain'], 'name': i['name'], 'value': i['value']} for i in cookies] 
[Dbg]>>> newlist 
[{'domain': u'.facebook.com', 'name': u'c_user', 'value': u'100001724251788'}, 
 {'domain': u'.facebook.com', 'name': u'csm', 'value': u'2'}, 
 {'domain': u'.facebook.com', 
  'name': u'datr', 
  'value': u'AUojUqoBUYA2wj4j04GT5XvX'}, 
 {'domain': u'.facebook.com', 
  'name': u'lu', 
  'value': u'RitwQJMNRJ8siUh_9eIj4SMw'}, 
 {'domain': u'.facebook.com', 
  'name': u's', 
  'value': u'Aa7ebY1RvmeilCX8.BSI0od'}, 
 {'domain': u'.facebook.com', 
  'name': u'xs', 
  'value': u'62%3AjNm_3ySkegf7cg%3A2%3A1378044445%3A10945'}, 
 {'domain': u'.facebook.com', 
  'name': u'fr', 
  'value': u'0aU8cfDygWXo1ETQA.AWV9BQIzKARYURFpuxUdXLoXcl8.BSI0od.j_.FIj.AWXjyq2t'}, 
 {'domain': u'.facebook.com', 'name': u'sub', 'value': u'64'}, 
 {'domain': u'.facebook.com', 'name': u'p', 'value': u'125'}, 
 {'domain': u'.facebook.com', 
  'name': u'presence', 
  'value': u'EM378046939EuserFA21B01724251788A2EstateFDsb2F0Et2F_5b_5dElm2FnullEuct2F1378043847BEtrFnullEtwF2448105081EatF1378046499377G378046939504CEchFDp_5f1B01724251788F13CC'}] 

收件人:

    <Cookie>.facebook.com:datr:gyenULkNKjCIJFTYDz2qbp9I 
    <Cookie>.facebook.com:c_user:120004707330532 
    <Cookie>.facebook.com:fr:0LglznOeWFepXcvAF.AWVm9awu51UtdvT65f9HqxYXUsI.BQp4ej._Q.AAA.AWW8GKGl 
    <Cookie>.facebook.com:lu:gg1dq7zzNjC6pd7W9W0SFHnA 
    <Cookie>.facebook.com:s:Aa5Zmp1zeLF36x3s 
    <Cookie>.facebook.com:xs:1%3AWvWR_uXSzC3p3w%3A0%3A1374938392 
    <Cookie> 

请您参考如下方法:

要从字典列表中提取任意名称,您可以使用 operator.itemgetter() :

from operator import itemgetter 
 
names = ["name", "value"] # fields to extract 
values = itemgetter(*names) # function that extracts values from an input dict 
 
result = [dict(zip(names, values(d))) for d in list_of_dicts] 
print(result) 

输出

[{'name': u'c_user', 'value': u'100001456251788'}, 
 {'name': u'csm', 'value': u'2'}, 
 {'name': u'datr', 'value': u'AUojdfkBUYA2wj4j04GT5XvX'}]