MWE:以下是列表:
L=[['1', '1', '0', '0', '0'],['1', '1', '1', '1', '0'],['0', '0', '1', '1', '0']]
我想要的清单是:
D=['11000','11110','00110']
我该怎么做才能帮忙。
答案 0 :(得分:3)
String Input = null;
while(true){
Input = scanner.nextLine();
switch (Input) {
case "Eat":
blue.eat();
break;
case "Sleep":
blue.sleep();
break;
case "Sport":
blue.sport();
break;
case "Condition":
blue.output();
break;
default: System.out.println("no valid option");
break;
}
答案 1 :(得分:2)
您可以使用列表理解:
L = [
['1', '1', '0', '0', '0'],
['1', '1', '1', '1', '0'],
['0', '0', '1', '1', '0']
]
D = [''.join(l) for l in L]
或地图功能:
D = map(''.join, L) # returns a generator in python3, cast it to list to get one
请注意,执行此操作的最pythonic方式是列表理解。
答案 2 :(得分:0)
reduce
轻松创建您需要使用初始化器-reduce
函数中的第三个参数。
reduce(
lambda result, _list: result.append(''.join(_list)) or result,
L,
[])
import operator
map(lambda l: reduce(operator.iconcat, l), L)
以上代码适用于python2和python3,但是您需要将reduce模块导入为from functools import reduce
。有关详细信息,请参见下面的链接。