如何使用python中的列表创建嵌套列表?

时间:2019-11-02 08:42:55

标签: python list

我有包含以下格式的字符串(str1)。使用该字符串,我创建了一个列表。我正在尝试使用数据创建嵌套列表。

str1 = 'Emp1 Developer Band1 Active\r\nEmp2 Senior-Developer Band2 Inactive\r\nEmp3 Admin Band2 Active'
print(str1.splitlines())

输出:

['Emp1 Developer Band1 Active', 'Emp2 Senior-Developer Band2 Inactive', 'Emp3 Admin Band2 Active'] 

任何人都可以让我获取将上述数据格式化为如下所示的嵌套列表中的代码

预期结果:

[['Emp1,Developer,Band1,Active'],['Emp2 Senior-Developer Band2 Inactive'],[Emp3 Admin Band2 Active]]

3 个答案:

答案 0 :(得分:1)

z = [[','.join(y for y in x.split())] for x in str1.splitlines()]
print(z)

说明:

  1. 根据\ n

  2. 分割str1
  3. 对于每行,根据空格将其拆分

  4. 将2(可迭代)的结果与','字符连接起来

了解以下内容:

答案 1 :(得分:1)

我认为3个列表[Emp3 Admin Band2 Active]可能有错字,

请尝试嵌套列表理解:

str1 = 'Emp1 Developer Band1 Active\r\nEmp2 Senior-Developer Band2 Inactive\r\nEmp3 Admin Band2 Active'
#print(str1.splitlines())

print([[y for y in x.split()] for x in str1.splitlines()])

输出:

[['Emp1', 'Developer', 'Band1', 'Active'], ['Emp2', 'Senior-Developer', 'Band2', 'Inactive'], ['Emp3', 'Admin', 'Band2', 'Active']]

答案 2 :(得分:-1)

简单:

>>> [[x] for x in str1.splitlines()]
[['Emp1 Developer Band1 Active'], ['Emp2 Senior-Developer Band2 Inactive'], ['Emp3 Admin Band2 Active']]