gpt4 book ai didi

python - 从字典中的列表中删除方括号和逗号

转载 作者:行者123 更新时间:2023-11-28 22:13:52 25 4
gpt4 key购买 nike

我是一名新手程序员,我不知道如何从我从带列表的字典中提取的值中删除括号和逗号。我错过了什么?

据我所知,for 循环通常会删除它们,但现在不会这样做。

简化代码:

dict = { 
'name1': ['python', 'c', 'java'],
'name2': ['c.'],
'name3': ['ruby', 'go'],
'name4': ['javascript', 'python'],
'name5': [],
}

for k, v in dict.items():
if len(v) == 1:
print(str(k).title() + "'s favorite language is " + str(v).title() + "\n")
elif len(v) > 1:
print(str(k).title() + "'s favorite languages are: \n" + str(v).title() + "\n")
elif len(v) < 1 :
print(str(k).title() + " does not have a favorite language")

最佳答案

使用joinmap :

dict = {
'name1': ['python', 'c', 'java'],
'name2': ['c.'],
'name3': ['ruby', 'go'],
'name4': ['javascript', 'python'],
'name5': [],
}

for k, v in dict.items():
if len(v) == 1:
print(str(k).title() + "'s favorite language is " + ', '.join(map(str.title, v)) + "\n")
elif len(v) > 1:
print(str(k).title() + "'s favorite languages are: \n" + ', '.join(map(str.title, v)) + "\n")
elif len(v) < 1 :
print(str(k).title() + " does not have a favorite language")

输出

Name3's favorite languages are: 
Ruby, Go

Name5 does not have a favorite language
Name2's favorite language is C.

Name4's favorite languages are:
Javascript, Python

Name1's favorite languages are:
Python, C, Java

想法是将 str.title 应用于值列表中的每个字符串(使用 map),然后通过逗号和空格连接这些字符串 (', ' ).请注意,您可以更改连接的字符串以满足您的需要。

关于python - 从字典中的列表中删除方括号和逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53685123/

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