请问这行字典里的value怎么能把[]去掉呢

怎么能把:

{'mitsuwa': [['rice']],
 '99ranch': [['msg'], ['sambal', 'banana leaf']],
 'costco': [['eggs']]}

改成:

 {'mitsuwa': ['rice'], '99ranch': ['msg', 'sambal', 'banana leaf'], \
'costco': ['eggs']}

我的代码:

def grocery_summary(grocery_purchases):
    """
    I create an empty dictionary, then use setdefault to append keys and values.

    >>> p1 = [{'mitsuwa': ['rice'], '99ranch': ['msg']}, \
{'99ranch': ['sambal', 'banana leaf'], 'costco': ['eggs']}]
    >>> grocery_summary(p1)
    {'mitsuwa': ['rice'], '99ranch': ['msg', 'sambal', 'banana leaf'], \
'costco': ['eggs']}
    >>> p2 = [{'ralphs': ['milk', 'carrot', 'milk'], 'costco': ['carrot']}, \
{'ralphs': ['carrot', 'carrot', 'milk'], 'costco': ['carrot']}]
    >>> grocery_summary(p2)
    {'ralphs': ['milk', 'carrot'], 'costco': ['carrot']}

    # Add at least 3 doctests below here #

    """
    # YOUR CODE GOES HERE #
    keys=[]
    values=[]
    for i in grocery_purchases:
        for e in i:
            keys.append(e)
            values.append(i[e])
            
    dic = {}
    for k in range(len(keys)):
        if keys[k] not in dic:
            dic[keys[k]]=[values[k]]
        elif keys[k] in dic:
            dic[keys[k]].append(values[k])


    return dic

Append()用加法代替就好了:

def grocery_summary(grocery_purchases):
    """
    I create an empty dictionary, then use setdefault to append keys and values.
    >>> p1 = [{'mitsuwa': ['rice'], '99ranch': ['msg']}, \
{'99ranch': ['sambal', 'banana leaf'], 'costco': ['eggs']}]
    >>> grocery_summary(p1)
    {'mitsuwa': ['rice'], '99ranch': ['msg', 'sambal', 'banana leaf'], \
'costco': ['eggs']}
    >>> p2 = [{'ralphs': ['milk', 'carrot', 'milk'], 'costco': ['carrot']}, \
{'ralphs': ['carrot', 'carrot', 'milk'], 'costco': ['carrot']}]
    >>> grocery_summary(p2)
    {'ralphs': ['milk', 'carrot'], 'costco': ['carrot']}
    # Add at least 3 doctests below here #
 
    """
    # YOUR CODE GOES HERE #
    keys=[]
    values=[]
    for i in grocery_purchases:
        for e in i:
            keys.append(e)
            values.append(i[e])
    dic = {}
    for k in range(len(keys)):
        if keys[k] not in dic:
            dic[keys[k]]=values[k]
        elif keys[k] in dic:
            dic[keys[k]]=dic[keys[k]]+values[k]
    return dic
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632