>>> a
['(617) 965-2555<br />\nOrganization Name', 'Street Name', 'City', 'Zip code', '(413) 333-2251<br />\nOrg Name 2', 'Address', 'City', 'Zip code 2', '(617) 568-7777</p>\n\n']
>>> [i.split("\n") for i in a]
[['(617) 965-2555<br />', 'Organization Name'], ['Street Name'], ['City'], ['Zip code'], ['(413) 333-2251<br />', 'Org Name 2'], ['Address'], ['City'], ['Zip code 2'], ['(617) 568-7777</p>', '', '']]
如果你想让它变平:
>>> import itertools
>>> list(itertools.chain(*[i.split("\n") for i in a]))
['(617) 965-2555<br />', 'Organization Name', 'Street Name', 'City', 'Zip code', '(413) 333-2251<br />', 'Org Name 2', 'Address', 'City', 'Zip code 2', '(617) 568-7777</p>', '', '']
编辑:
感谢@ AGF的评论,现在我知道了,我认为:
>>> a
['(617) 965-2555<br />\nOrganization Name', 'Street Name', 'City', 'Zip code', '(413) 333-2251<br />\nOrg Name 2', 'Address', 'City', 'Zip code 2', '(617) 568-7777</p>\n\n']
>>> [i.split("{}") for i in "{}".join(a).split("\n")]
[['(617) 965-2555<br />'], ['Organization Name', 'Street Name', 'City', 'Zip code', '(413) 333-2251<br />'], ['Org Name 2', 'Address', 'City', 'Zip code 2', '(617) 568-7777</p>'], [''], ['']]
假设“{} “从未在您的原始列表中使用,否则将其更改为不在您列表中的东西,|
,;:;
等
而且你可以很容易地过滤输出去除名单只包含空字符串有:
filter("".join, result)
这不是他问的。他希望列出一个列表,其中每个换行符都划定一个新的子列表。 – agf
如果您无法预测哪些字符将会/不会被使用,那么它们很聪明但很容易破损。 – agf
@agf,谢谢,编辑答案。是的,这很容易出错,但我认为你可以将它改成'+%+'^ 23 +ç.ü',这对于某人来说几乎是不可能的。或者,你甚至可以生成随机的十个字符并使用它。 – utdemir