【发布时间】:2019-07-11 19:22:02
【问题描述】:
my_list = [
'Rob Kardashian\n 00052369 1987-03-17 Reality Star\nBrooke Barry 00213658 2001-03-30 TikTok Star',
'John Lennon\n 02578913 1940-10-09 Singer',
'Bae De Leon\n 00896351 1997-08-02 Volleyball Player\nJonas Blue 02369785 1990-08-02 Music Producer\nAlbert Einstein 65231478 1879-03-14',
'Robert Downey\n Jr 23897410 1965-04-04 Actor'
]
我在上面有一个列表,我按照下面的数字将其拆分。
my_list_new = [re.split('\s(?=\d)|(?<=\d)\s', i) for i in my_list]
输出:
[
[ 'Rob Kardashian\n', '00052369','1987-03-17', 'Reality Star\nBrooke Barry', '00213658', '2001-03-30', 'TikTok Star'],
['John Lennon\n', '02578913', '1940-10-09', 'Singer'],
['Bae De Leon\n', '00896351', '1997-08-02', 'Volleyball Player\nJonas Blue', '02369785', '1990-08-02', 'Music Producer\nAlbert Einstein', '65231478', '1879-03-14'],
['Robert Downey\n Jr', '23897410', '1965-04-04', 'Actor']
]
下一步:我想将 my_list_new 拆分为 '\n' 但跳过第一个。
如何使用列表推导来完成这项工作?
预期输出:
[
['Rob Kardashian\n', '00052369', '1987-03-17', 'Reality Star', 'Brooke Barry', '00213658', '2001-03-30','TikTok Star'],
['John Lennon\n', '02578913', '1940-10-09', 'Singer'],
['Bae De Leon\n', '00896351', '1997-08-02', 'Volleyball Player', 'Jonas Blue','02369785', '1990-08-02', 'Music Producer', 'Albert Einstein', '65231478', '1879-03-14'],
['Robert Downey\n Jr', '23897410', '1965-04-04', 'Actor']
]
感谢您的帮助!
【问题讨论】:
-
你能发布一个想要的输出吗?我不完全确定您是要跳过列表的第一个元素还是在每个循环中第一次出现
\n -
@Juan C 请看更新。
标签: python list split nested-lists