如何在python 3中将字符串转换为字典

如何在python 3中将字符串转换为字典,python,python-3.x,dictionary,Python,Python 3.x,Dictionary,以字符串开头,如: S='a=65 b=66 c=67' 如何创建一个输出dict,如{'a':'65','b':'66','c':'67'} 尝试: S='a=65 b=66 c=67' L=s.split(' ') D=dict() A='' i=0 While i<Len(L): A=L[i].split('=') D[a[i]]=a[i+1] i+2 print (D) 第8行索引器错误列表索引超出范围 您使用索引i来迭代L,但是您使用i+1来访问A,

以字符串开头,如:

S='a=65 b=66 c=67'
如何创建一个输出dict,如{'a':'65','b':'66','c':'67'}

尝试:

S='a=65 b=66 c=67'
L=s.split(' ')
D=dict()
A=''
i=0
While i<Len(L):
    A=L[i].split('=')
    D[a[i]]=a[i+1]
    i+2

print (D)
第8行索引器错误列表索引超出范围


您使用索引i来迭代L,但是您使用i+1来访问A,这将导致问题。A可能没有LenL的大小

您正在使用索引i在L上迭代,但是您使用i+1访问A,这将导致问题。A可能没有LenL的大小让我们使用理解和拆分:

dict(i.split('=') for i in S.split())
输出:

{'a': '65', 'b': '66', 'c': '67'}

让我们使用理解和拆分:

dict(i.split('=') for i in S.split())
输出:

{'a': '65', 'b': '66', 'c': '67'}