我有一個看起來像這樣的列表:如何在列表內分割字符串在Python
[ 'abc=lalalla', 'appa=kdkdkdkd', 'kkakaka=oeoeoeo']
而且我想通過「=」讓一切都在拆分此列表左側將成爲鍵,右側是值。
{
'abc':'lalalla',
'appa':'kdkdkdkd',
'kkakaka':'oeoeo'
}
我有一個看起來像這樣的列表:如何在列表內分割字符串在Python
[ 'abc=lalalla', 'appa=kdkdkdkd', 'kkakaka=oeoeoeo']
而且我想通過「=」讓一切都在拆分此列表左側將成爲鍵,右側是值。
{
'abc':'lalalla',
'appa':'kdkdkdkd',
'kkakaka':'oeoeo'
}
a = [ 'abc=lalalla', 'appa=kdkdkdkd', 'kkakaka=oeoeoeo']
d = dict(s.split('=') for s in a)
print d
Output:
{'kkakaka': 'oeoeoeo', 'abc': 'lalalla', 'appa': 'kdkdkdkd'}
print dict([s.split("=") for s in my_list])
這樣
>>> my_list = [ 'abc=lalalla', 'appa=kdkdkdkd', 'kkakaka=oeoeoeo']
>>> print dict(s.split("=") for s in my_list) #thanks gribbler
{'kkakaka': 'oeoeoeo', 'abc': 'lalalla', 'appa': 'kdkdkdkd'}
非常感謝您 – Vor
除非你的Python是很老了,你可以離開了名單的理解和使用發電機表達德米安確實gribbler :)我用2.6和始終不忘我能做到這一點 –
感謝..主要是因爲我不能做詞典理解 –
此外,一定要限制分流至1,以防右側包含了一個「= 」。
d = dict(s.split('=',1) for s in a)
非常感謝你 – Vor
不用擔心,hth。 –