從字典/列表中,如何將列表拆分\ n。例如:以python分隔的分割列表
In [1]: d = {'key1': 'value1\n value2 \n value3\n'}
In [2]: d.values()
Out[2]: ['value1\n value2 \n value3\n']
所需的輸出:
['value1', 'value2 ', 'value3']
我看了一下現有的例子,但無法找到這個特定的一個。
從字典/列表中,如何將列表拆分\ n。例如:以python分隔的分割列表
In [1]: d = {'key1': 'value1\n value2 \n value3\n'}
In [2]: d.values()
Out[2]: ['value1\n value2 \n value3\n']
所需的輸出:
['value1', 'value2 ', 'value3']
我看了一下現有的例子,但無法找到這個特定的一個。
在這裏你去:
d['key1'].split('\n')
這實際上給出了[['value1','value2','value3','']',所以如果它是空字符串,你需要切掉最後一個項目。 –
謝謝我沒有意識到d [k]輸出str(不像d.values()輸出列表)!! –
你的意思是你想要的值作爲一個平面列表?像這樣?
>>> {k: [x.strip() for x in v.splitlines()] for k, v in d.iteritems()}
{'key1': ['value1', 'value2', 'value3']}
BPL指出,如果您使用Python3,請從'iteritems'中移除'iter'。爲什麼他複製我的答案,我不知道。 –
的Python 2.x的
d = {'key1': 'value1\n value2 \n value3\n'}
print {k: [x.strip() for x in v.splitlines()] for k, v in d.iteritems()}
Python 3.x都有
d = {'key1': 'value1\n value2 \n value3\n'}
print({k: [x.strip() for x in v.splitlines()] for k, v in d.items()})
的可能的複製[字符串分割到Python的list(HTTP://計算器.com/questions/743806/split-string-into-a-list-in-python) – JETM
你想要的輸出顯示values數組中的字符串,由\ n分割,然後引導(但不是尾隨)空白空白。空白的剝離是否顯着?如果是這樣,你可以把這個問題呢?另外,你能否給出一個更好的例子,例如當原始字典中有多個條目時? – davmac