如何从字典中接收裸字符串,末尾没有双引号或括号或括号?

给定字典,如何从字典中获取“原始”值列表?所需的结果末尾不包含括号或括号或双引号,它仅包含每个值的单引号。所需的结果如下所示:


result = 'yellow', 'green', 'white'

我愿意接受有关如何设置字典以轻松获得所需结果输出的建议。字典可以由键值对组成,其中键值对是字典和列表或元组或集合。


这个解决方案在测试中有效,我想知道是否有比使用更pythonic和更健壮的东西,print这样我就可以使用结果,而不仅仅是在测试中打印出来:


Dict_w_tuple_values = dict(

   dictionary={

    'fruits':{

        'type':['c'],

        'colors':('yellow', 'green', 'white'),

    },

)


result = print(", ".join( repr(e) for e in list(Dict_w_tuple_values['dictionary']['fruits']['colors'])))

最初我有这本字典:


Dict_w_list_values = dict(

   dictionary={

    'fruits':{

        'type':['c'],

        'colors':['yellow', 'green', 'white'],

    },

)

...并尝试了列表推导,.join, eval(list_object), .strip, .lstrip, findall, str(list_object)[1:-1], re.sub, replace, joinwith map.


这些都没有奏效。我看到了一些使用正则表达式的机会,但没有得到想要的结果。


最终,我想使用结果通过 .format(**Dict_w_tuple_values).


填充时的参数应为:


'yellow', 'green', 'white'

不是


"'yellow', 'green', 'white'"

或者


["'yellow', 'green', 'white'"]

也不


("'yellow', 'green', 'white'")


开心每一天1111
浏览 131回答 2
2回答

神不在的星期二

list_object您为什么不这样做,而不是获取字符串并对其应用正则表达式?list_string = ', '.join(DictVariables['dictionary']['fruits']['colors'])如果您需要在每个字符串周围加上单引号:list_string = "'{}'".format(         "', '".join(DictVariables['dictionary']['fruits']['colors']))这会在每个元素 ( ) 之间添加单引号', ',然后将剩余的外部元素添加到format

慕码人8056858

使用替换功能从列表中删除 []。以下是供您参考的代码。a.replace('[','').replace(']','')双引号使列表变为字符串,因此我们无法删除它。让我知道使用双引号的原因,我们可以解决这个问题
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python