为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

开心每一天1111 2022-04-27 16:12:57
给定字典,如何从字典中获取“原始”值列表?所需的结果末尾不包含括号或括号或双引号,它仅包含每个值的单引号。所需的结果如下所示: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'")
查看完整描述

2 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

list_object您为什么不这样做,而不是获取字符串并对其应用正则表达式?

list_string = ', '.join(DictVariables['dictionary']['fruits']['colors'])

如果您需要在每个字符串周围加上单引号:

list_string = "'{}'".format(    
    "', '".join(DictVariables['dictionary']['fruits']['colors']))

这会在每个元素 ( ) 之间添加单引号', ',然后将剩余的外部元素添加到format


查看完整回答
反对 回复 2022-04-27
?
慕码人8056858

TA贡献1803条经验 获得超6个赞

使用替换功能从列表中删除 []。以下是供您参考的代码。

a.replace('[','').replace(']','')

双引号使列表变为字符串,因此我们无法删除它。让我知道使用双引号的原因,我们可以解决这个问题


查看完整回答
反对 回复 2022-04-27
  • 2 回答
  • 0 关注
  • 129 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信