Python 如何将列表转换为所需的字典格式

Python 如何将列表转换为所需的字典格式,python,dictionary,python-2.7,Python,Dictionary,Python 2.7,输入为a=“test1、test2、test3、test4等” 我希望输出如下所示: b={"test1":"test1","test2":"test2","test3":"test3",..etc} 请告诉我如何做。要在循环中创建词典,请使用dict理解 假设a变量是一个带有逗号分隔值的字符串,则以下操作可行: {v: v for v in a.split(',')} 其中,我们使用逗号分隔列表中的每个值作为结果字典的键和值 {k:v…}dict理解是在Python 2.7和3.0中添加的

输入为
a=“test1、test2、test3、test4等”

我希望输出如下所示:

b={"test1":"test1","test2":"test2","test3":"test3",..etc}

请告诉我如何做。

要在循环中创建词典,请使用dict理解

假设
a
变量是一个带有逗号分隔值的字符串,则以下操作可行:

{v: v for v in a.split(',')}
其中,我们使用逗号分隔列表中的每个值作为结果字典的键和值

{k:v…}
dict理解是在Python 2.7和3.0中添加的,在早期的Python版本中生成2值元组:

dict((v, v) for v in a.split(','))

要在循环中创建词典,请使用dict理解

假设
a
变量是一个带有逗号分隔值的字符串,则以下操作可行:

{v: v for v in a.split(',')}
其中,我们使用逗号分隔列表中的每个值作为结果字典的键和值

{k:v…}
dict理解是在Python 2.7和3.0中添加的,在早期的Python版本中生成2值元组:

dict((v, v) for v in a.split(','))

对Martijn Pieters’的补充:

dict理解仅适用于Python版本>=2.7的情况。对于Python的早期版本,可以创建2值元组并将其传递给
dict()
函数:

dict((item, item) for item in a.split(','))
最后,也要提到这一选项,这将是一条漫长的道路:

d = {} # alternatively, d = dict()
for item in a.split(','):
    d[item] = item

对Martijn Pieters’的补充:

dict理解仅适用于Python版本>=2.7的情况。对于Python的早期版本,可以创建2值元组并将其传递给
dict()
函数:

dict((item, item) for item in a.split(','))
最后,也要提到这一选项,这将是一条漫长的道路:

d = {} # alternatively, d = dict()
for item in a.split(','):
    d[item] = item
另一种方式:

tmp = a.split(",")
b = dict(zip(tmp,tmp))
另一种方式:

tmp = a.split(",")
b = dict(zip(tmp,tmp))

你试过什么吗?你遇到了什么问题?什么是
a
?它是一个字符串吗?@MartijnPieters:胡乱猜测:它是一个元组?@Kimvais:也许,但示例输出是以字符串值
test1
test2
等形式给出的。您尝试过什么吗?你遇到了什么问题?什么是
a
?它是字符串吗?@MartijnPieters:胡乱猜测:它是一个元组?@Kimvais:也许吧,但示例输出是字符串值
test1
test2
,等等。如果它不是字符串,而是一个列表或元组,那么就
{v:v代表a}
对不起,没有提到变量“a”,它是一个字符串@martijn Pieters,谢谢你的回答,它对我有用,如果它不是一个字符串,而是一个列表或元组,那么就
{v:v for v in a}
很抱歉没有提到变量“a”,它是一个字符串@martijn Pieters,谢谢你的回答,这对我很有用