簡體   English   中英

字典列表需要拆分並在拆分后僅取值

[英]List of dictionary need to split and take first only value after slit

我在 Python 中有字典列表,我想在拆分字典中的值並在拆分后僅取第一個值后將其轉換為另一個列表。

myList = [
  {'name': 'CN=John,Li', 
   'type': 'Agent', 
   'isMember': False},
  {'name': 'CN=Moses,Somewhere', 
   'type': 'Worker', 
   'isMember': True},
  {'name': 'CN=David, Something', 
   'type': 'Agent', 
   'isMember': False}
]


required_fields = ['name', 'isMember']

拆分值后,我正在尋找所需的 output

myList = [
  {'name': 'John', 
   'isMember': False},
  {'name': 'Moses', 
   'isMember': True},
  {'name': 'David', 
   'isMember': False}
]

先感謝您

一個小幫手 function 從名稱中找到CN=...部分,以及循環遍歷myList的列表理解:

import re


def get_cn(name):
    return re.search("CN=([^,]+)", name).group(1)


my_list = [...]

new_list = [
    {'name': get_cn(x['name']), 'isMember': x['isMember']}
    for x 
    in my_list
]

print(new_list)

這輸出

[{'name': 'John', 'isMember': False}, {'name': 'Moses', 'isMember': True}, {'name': 'David', 'isMember': False}]

這可以在單襯里完成 -->

new_list = []
for i in range(len(myList)):
    new_list.append({"name": re.search("CN=([^,]+)", myList[i]['name']).group(1), \
                     "isMember":myList[i]['isMember']})
print(new_list)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM