首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在Python中,将以分号分隔的字符串拆分到字典

在Python中,将以分号分隔的字符串拆分到字典
EN

Stack Overflow用户
提问于 2008-10-09 11:38:22
回答 5查看 101.6K关注 0票数 86

我有一个字符串,看起来像这样:

代码语言:javascript
复制
"Name1=Value1;Name2=Value2;Name3=Value3"

Python中有没有一个内置的类/函数可以接受这个字符串并构造一个字典,就像我已经这样做了:

代码语言:javascript
复制
dict = {
    "Name1": "Value1",
    "Name2": "Value2",
    "Name3": "Value3"
}

我已经查看了所有可用的模块,但似乎找不到任何匹配的模块。

谢谢,我确实知道如何自己制作相关代码,但由于这种小的解决方案通常是等待发生的雷区(即。有人写道: Name1='Value1=2';)等等,然后我通常更喜欢一些预先测试过的函数。

那我自己来吧。

EN

回答 5

Stack Overflow用户

发布于 2011-03-01 10:46:12

这几乎就是你想要做的:

代码语言:javascript
复制
>>> import urlparse
>>> urlparse.parse_qs("Name1=Value1;Name2=Value2;Name3=Value3")
{'Name2': ['Value2'], 'Name3': ['Value3'], 'Name1': ['Value1']}
票数 6
EN

Stack Overflow用户

发布于 2019-03-04 21:23:26

代码语言:javascript
复制
s1 = "Name1=Value1;Name2=Value2;Name3=Value3"

dict(map(lambda x: x.split('='), s1.split(';')))
票数 4
EN

Stack Overflow用户

发布于 2014-12-23 19:37:28

它可以简单地通过字符串连接和列表理解来完成

",".join(["%s=%s" % x for x in d.items()])

代码语言:javascript
复制
>>d = {'a':1, 'b':2}
>>','.join(['%s=%s'%x for x in d.items()])
>>'a=1,b=2'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/186857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档