相关疑难解决方法(0)

按密钥长度排序字典

可能重复:
按密钥长度排序字典

我需要使用字典"搜索和替换".我希望它首先使用最长的键.

以便

text = 'xxxx'
dict = {'xxx' : '3','xx' : '2'} 
for key in dict:
    text = text.replace(key, dict[key])
Run Code Online (Sandbox Code Playgroud)

应该返回"3x",而不是现在的"22".

就像是

for key in sorted(dict, ???key=lambda key: len(mydict[key])):
Run Code Online (Sandbox Code Playgroud)

只是无法得到里面的东西.
有可能用一个字符串吗?

python dictionary

9
推荐指数
1
解决办法
1万
查看次数

按密钥长度排序的字典

任何人都知道如何按密钥长度对这本字典进行排序?

{
    'http://ccc.com/viewvc/' : [{'type': 'web-servers', 'app': 'Apache', 'ver': '2.2.14'}, {'type': 'operating-systems', 'app': 'Ubuntu', 'ver': None}],    
    'http://bbb.com/' : [{'type': 'web-servers', 'app': 'Apache', 'ver': '2.2.22'}, {'type': 'programming-languages', 'app': 'PHP', 'ver': '5.3.10'}, {'type': 'cms', 'app': 'Drupal', 'ver': None}, {'type': 'operating-systems', 'app': 'Ubuntu', 'ver': None}, {'type': 'javascript-frameworks', 'app': 'jQuery', 'ver': None}, {'type': 'captchas', 'app': 'Mollom', 'ver': None}]
}
Run Code Online (Sandbox Code Playgroud)

预期产量:

{
    'http://bbb.com/' : [{'type': 'web-servers', 'app': 'Apache', 'ver': '2.2.22'}, {'type': 'programming-languages', 'app': 'PHP', 'ver': '5.3.10'}, {'type': 'cms', 'app': 'Drupal', 'ver': None}, {'type': 'operating-systems', 'app': …
Run Code Online (Sandbox Code Playgroud)

python sorting dictionary ordereddictionary

4
推荐指数
2
解决办法
3018
查看次数

标签 统计

dictionary ×2

python ×2

ordereddictionary ×1

sorting ×1