我想获取一个包含未完全分离的元组的字符串,并将它们转换为字典。
s =“banana 4 apple 2 orange 4”
d = {'banana':'4','apple':'2','orange':'4'}
我遇到了问题,因为空间用于分隔值和对。什么是正确的伎俩?
答案 0 :(得分:5)
简单但在此处提供解决方案:
使用split()
>>> s = "banana 4 apple 2 orange 4"
>>> s.split()
['banana', '4', 'apple', '2', 'orange', '4']
>>>
将它们分组(此处需要进行一些错误检查)
>>> k = [(x[t], x[t+1]) for t in range(0, len(x) -1, 2)]
>>> k
[('banana', '4'), ('apple', '2'), ('orange', '4')]
>>>
从中创建一个字典
>>> dict(k)
{'orange': '4', 'banana': '4', 'apple': '2'}
>>>
答案 1 :(得分:3)
>> s = "banana 4 apple 2 orange 4"
>> lst = s.split()
>> dict(zip(lst[::2], lst[1::2]))
答案 2 :(得分:0)
致电.split()
,get the elements 2 at a time,并将其传递给dict()
。
答案 3 :(得分:-1)
我不知道python但是应该可以将字符串转换为数组,然后通过交替名称和放大来通过数组迭代来创建字典。值。