我有以下清单:
bananas = ['7,2,1 : Banana', 'Z : Banana', 'L,D : Banana']我想使用Python的高阶函数导出以下内容:
[['7', '2', '1'], ['Z'], ['L', 'D']]我写了这封信:
bananas_stripped = map(lambda x: [x.split(':')[0]], bananas)...which会产生这样的结果:
[['7,2,1 '], ['Z '], ['L,D ']]我可以像这样申请另一个HOF:
test = map(lambda x: x[0].split(','), bananas_stripped)但我不知道如何在一个函数中编写所有这些,也就是说,我想在bananas_stripped中完成所有这些工作。
发布于 2016-02-20 16:32:49
bananas_stripped = [['7,2,1 '], ['Z '], ['L,D ']]
new_bananas_stripped = []
for item in bananas_stripped:
item_string = item[0].replace(" ", "")
item_string = item_string.split(',')
new_bananas_stripped.append(item_string)
print(new_bananas_stripped)这将给出输出
[['7', '2', '1'], ['Z'], ['L', 'D']]对不起,我不太擅长把代码简化成一行。
发布于 2016-02-20 16:22:56
我认为这是可行的:
bananas_stripped = map(lambda x: [x.strip().split(",") for x in [x.split(':')[0]]], bananas)https://stackoverflow.com/questions/35525736
复制相似问题