所以我试图围绕列表理解。这就是我所拥有的。
all_students = [line.split() for line in data]
all_students = [[data.strip() for data in student]for student in all_students]
效果很好。按预期返回我的数组数组。我的问题是,是否可以将这两种表达式合二为一?我尝试了很多东西,答案(如果可能的话)仍然没有找到我。
答案 0 :(得分:1)
我认为你的逻辑等同于这个:
[[d.strip() for d in line.split()] for line in data]
一个例子(不完全确定是否是你的情况):
data = ['a b', 'c d']
[[d.strip() for d in line.split()] for line in data]
# [['a', 'b'], ['c', 'd']]
all_students = [line.split() for line in data]
[[data.strip() for data in student]for student in all_students]
# [['a', 'b'], ['c', 'd']]
答案 1 :(得分:1)
可能这个?
all_students = [[d.strip() for d in stu] for stu in map(str.split, data)]
答案 2 :(得分:0)
您可以使用其他列表理解来代替all_students
:
all_students = [[data.strip() for data in student] for student in [line.split() for line in data]]