gpt4 book ai didi

python - 删除字典对象中的空格

转载 作者:行者123 更新时间:2023-11-28 21:31:33 25 4
gpt4 key购买 nike

说真的,这看起来很简单,但到目前为止我发现的方法都没有奏效。

我有一个像这样的字典对象:

dict = {'                      key1                    ': ["                value1              ", "                value1_1              "], '                      key2                    ': '                value2             ', '                      key3                    ': ['                value3              ', '                value3_1              '], '                      key4                    ': '                value4              ', '                      key5                    ': ['                value5              ', '                value5_1              ', '                value5_2              ']}

但我需要它是这样的:

{'key1': ["value1", "value1_1"], 'key2': 'value2', 'key3': ['value3', 'value3_1'], 'key4': 'value4', 'key5': ['value5', 'value5_1', 'value5_2']

因为有些值是列表,所以我试过这样的 for 循环(请原谅有趣的语法,我现在只需要让它工作,稍后会改进语法):

    for k, v in dict.items():
if type(v) is list:
k.replace(' ','')
k.replace(" ","")
for i in v:
i.replace(' ','')
i.replace(" ","")
else:
k.replace(' ','')
k.replace(" ","")
i.replace(' ','')
i.replace(" ","")

那没用。然后我尝试了:

    for k, v in dict.items():
if type(v) is list:
k = k.strip()
for i in v:
i = i.strip()
else:
k = k.strip()
v = v.strip()

那也什么也没做。帮忙!!!

最佳答案

使用 dict comprehensionlist comprehensionstrip() 来尝试使用一行代码:

{k.strip():[s.strip() for s in v] if type(v) is list else v.strip() for k, v in d.items()}

返回:

{'key1': ['value1', 'value1_1'],
'key2': 'value2',
'key3': ['value3', 'value3_1'],
'key4': 'value4',
'key5': ['value5', 'value5_1', 'value5_2']}

这绝对是最pythonic的方式:-)

关于python - 删除字典对象中的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57977829/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com