Python 3.x 将一个列表中的元素转换为字典中的键和值

Python 3.x 将一个列表中的元素转换为字典中的键和值,python-3.x,Python 3.x,我正在寻找一种将列表转换为字典的方法,如下所示。这可能吗?提前谢谢 列表=[“1/a”、“2/b”、“3/c”] dict={“1”:“a”,“2”:“b”,“3”:“c”}当然这是可能的 首先,您可以使用e.split(“/”)拆分列表中的一个元素,这将给出一个列表,例如splitted=[“1”,“a”]。 可以将第一个元素指定给键,将第二个元素指定给值: k = splitted[0] v = splitted[1] 或者用另一种方式来表达: k,v = splitted 然后,您可以

我正在寻找一种将列表转换为字典的方法,如下所示。这可能吗?提前谢谢

列表=[“1/a”、“2/b”、“3/c”]


dict={“1”:“a”,“2”:“b”,“3”:“c”}

当然这是可能的

首先,您可以使用
e.split(“/”
)拆分列表中的一个元素,这将给出一个列表,例如
splitted=[“1”,“a”]
。 可以将第一个元素指定给键,将第二个元素指定给值:

k = splitted[0]
v = splitted[1]
或者用另一种方式来表达:

k,v = splitted
然后,您可以迭代列表以构建dict,因此如果我们将其总结(您不应该调用列表
list
,因为
list
是一种类型,并且是一个已经存在的标识符:

d = {}
for e in elements:
     k,v = e.split("/")
     d[k] = v
你也可以通过一行口述理解来做到这一点:

d = {k:v for k,v in [e.split("/") for e in elements]}

当然有可能

首先,您可以使用
e.split(“/”
)拆分列表中的一个元素,这将给出一个列表,例如
splitted=[“1”,“a”]
。 可以将第一个元素指定给键,将第二个元素指定给值:

k = splitted[0]
v = splitted[1]
或者用另一种方式来表达:

k,v = splitted
然后,您可以迭代列表以构建dict,因此如果我们将其总结(您不应该调用列表
list
,因为
list
是一种类型,并且是一个已经存在的标识符:

d = {}
for e in elements:
     k,v = e.split("/")
     d[k] = v
你也可以通过一行口述理解来做到这一点:

d = {k:v for k,v in [e.split("/") for e in elements]}
是的,你可以

如果希望所有内容都在“/”之后(即第二个字符),可以执行以下操作:

dict={c[0]:c[2:]表示列表中的c}

如果希望所有内容都位于“/”之后(但可能不是第二个字符),可以执行以下操作:

dict={c[0]:c.split('/')[1]用于列表中的c}

它实际上取决于你的输入和你想要的输出

如果希望所有内容都在“/”之后(即第二个字符),可以执行以下操作:

dict={c[0]:c[2:]表示列表中的c}

如果希望所有内容都位于“/”之后(但可能不是第二个字符),可以执行以下操作:

dict={c[0]:c.split('/')[1]用于列表中的c}

这实际上取决于你的输入和你想要的输出。你可以这样做

lista = ["1/a", "2/b", "3/c"]
new_dict = {}
for val in lista:    
    new_dict.update({val[0]:val[2]})
print(new_dict)
你可以这样做

lista = ["1/a", "2/b", "3/c"]
new_dict = {}
for val in lista:    
    new_dict.update({val[0]:val[2]})
print(new_dict)
试试这个

list = ["1as/aasc", "2sa/bef", "3edc/cadeef"]
dict = {i.split('/')[0]:i.split('/')[1] for i in list}
答案是

{'1as': 'aasc', '2sa': 'bef', '3edc': 'cadeef'}
我给出了一个不同的测试用例。希望这能回答您的问题。

试试这个

list = ["1as/aasc", "2sa/bef", "3edc/cadeef"]
dict = {i.split('/')[0]:i.split('/')[1] for i in list}
答案是

{'1as': 'aasc', '2sa': 'bef', '3edc': 'cadeef'}
我给出了一个不同的测试用例。希望这能回答您的问题。

是的,有可能,先拆分列表中的每个项目(“/”),然后您有key:value,现在将其添加到列表中,这是hintYes,这是可能的,先拆分列表中的每个项目(“/”),然后您有key:value,现在将其添加到列表中,这是提示