如何优化这三段代码? 尤其是第三种情况,因为列表值之间有许多组合,而且输入1000次的时间会危险地更长。你知道吗
代码1:
e00=[]
for i in range(len(c1)):
for j in range(len(d1[i])):
if d1[i][j]%2==0:
d = [c1[i],d1[i][j]]
e00.append(d)
代码2:
sciezki=[]
for i in range(len(out2)):
x1 = out2[i][-len(out2[i])]
x2 =out2[i][-1]
z1 = nx.shortest_path(g, x1, x2)
if z1 == out2[i] and len(z1)==8:
sciezki.append(z1)
代码3:
out=[]
for h in range(len(k)):
if len(out)!=0:
k2 = [out, k[h]]
for q in range(len(k2[0])):
for w in range(len(k2[1])):
r = list(chain(k2[0][q],k2[1][w]))
p = [n for n, _ in groupby(r)]
if len(p)==h+2:
out.append(p)
else:
for i in range(len(k[0])):
for j in range(len(k[1])):
r = list(chain(k[0][i],k[1][j]))
p = [n for n, _ in groupby(r)]
if len(p)==3:
out.append(p)
代码1
将条件列表与枚举一起使用:
代码2
只需稍作修改。你知道吗
相关问题 更多 >
编程相关推荐