![](/img/trans.png)
[英]Python dictionary with lists: get key of a list which contains max value at specific index
[英]Get max length of value inside a list which contains other lists
我得到了一個包含鍵和其他列表的列表。 我想創建一個函數來檢查列表中的最長值(字符串)。 它應該給我最長的字符串作為數字。 我在互聯網上沒有發現任何有用的東西。 只需要檢查帶有鍵(值)的字符串。 輸出:它應該計算最長值(字符串)的每個字符。
希望您能夠幫助我。
列表:
[{'name': 'title', 'value': 'titel{TM} D3', 'is_on_label': 1},
{'name': 'DK in', 'value': '24V max 2.5A', 'is_on_label': 1,
'id_configuration': 79,
'options': [{'value': '30V max 3A', 'id_configuration_v': '1668'},
{'value': 'none', 'id_configuration_v': '1696'}]}]
功能:
def checkLenFromConfigs(self, configs):
max_lenght = max(map(len, configs))
return max_lenght
您可以遞歸搜索數據結構中的所有values
:
data = [{
"name": "title",
"value": "titel{TM} D3",
"is_on_label": 1
},
[{
"name": "title",
"value": "titel{TM} D3",
"is_on_label": 1,
"sub_options": [
{
"value": "30V max 3A",
"id_configuration_v": "1668"
},
{
"value": "none none none none",
"id_configuration_v": "1696"
}
]
}],
{
"name": "DK in",
"value": "24V max 2.5A",
"is_on_label": 1,
"id_configuration": 79,
"options": [{
"value": "30V max 3A",
"id_configuration_v": "1668"
},
{
"value": "none",
"id_configuration_v": "1696"
}
]
}
]
def recur(data, count):
if isinstance(data, list):
for item in data:
count = recur(item, count)
elif isinstance(data, dict):
for k, v in data.items():
if k == 'value':
count.append(len(v))
else:
count = recur(v, count)
return count
result = recur(data, [])
print(max(result))
出去:
19
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.