Python 如何删除{}但保留字典值

Python 如何删除{}但保留字典值,python,python-3.x,dictionary,set,Python,Python 3.x,Dictionary,Set,今天我试着学习字典和集合,但我不知道如何正确使用join brandin = [] for x in range(int(input("New brand total: "))): brand = input("Brand Name: ") brandin.append(brand) brandinset = set(brandin) print("list: ", ', '.join(brandin)) print(

今天我试着学习字典和集合,但我不知道如何正确使用
join

brandin = []
for x in range(int(input("New brand total: "))):
    brand = input("Brand Name: ")
    brandin.append(brand)

brandinset = set(brandin)
print("list: ", ', '.join(brandin))
print("set: ", ', '.join(brandinset))

brandtotal = {}
for brand in brandin:
    if brand in brandtotal:
        brandtotal[brand] += 1
    else:
        brandtotal[brand] = 1

print((brandtotal))
这是输出:

New brand total: 7
Brand Name: nike
Brand Name: adidas
Brand Name: nike
Brand Name: vans
Brand Name: adidas
Brand Name: nb
Brand Name: puma
list:  nike, adidas, nike, vans, adidas, nb, puma
set:  nike, vans, puma, nb, adidas
{'nike': 2, 'adidas': 2, 'vans': 1, 'nb': 1, 'puma': 1}
如何制作
{'nike':2,'adidas':2,'vans':1,'nb':1,'puma':1}

变得像nike:2、adidas:2、vans:1、nb:1、puma:1

我试图使用
join
,但它删除了

您需要使用
join()

输出为以下字符串:

'nike: 2, adidas: 2, vans: 1, nb: 1, puma: 1'

一个选项:
print(','.join(f“{key}:{value}”代表键,brandtotal.items()中的值)
@johnympp谢谢!!!!顺便说一句,f在那里做什么?它是一个。格式化字符串的更简单方法。您也可以使用
format()
或字符串连接,但我更喜欢f-strings.addendment to@johnnymapp的评论(这似乎真的应该是一个答案):如果您只是
print
ing它,并且不需要在内存中存在完整的字符串,您可以这样做:
print(*(f“{k}:{v}”代表k,v代表brandtotal.items()),sep=','))
并让
print
代表您处理单个项目的打印和插入分隔符。我建议使用f-strings或
str.format
而不是重复的字符串连接(这两种连接方式都比较难读,而且速度也比较慢)。我还建议迭代
.items()
以避免对每个键进行不必要的查找,以更快/更简单的:
','结尾。加入(f'{k}:{v}代表k,v代表brandtotal.items())
'nike: 2, adidas: 2, vans: 1, nb: 1, puma: 1'