草庐IT

python - 列表或元组的成对遍历

a=[5,66,7,8,9,...]是否可以进行迭代而不是这样写?a[1]-a[0]a[2]-a[1]a[3]-a[2]a[4]-a[3]...谢谢! 最佳答案 使用range即可。然而,编程(如数学)是建立在抽象之上的。连续对[(x0,x1),(x1,x2),...,(xn-2,xn-1)],称为成对组合。参见itertoolsdocs中的示例.一旦你的工具集中有了这个函数,你就可以编写:forx,yinpairwise(xs):print(y-x)或用作生成器表达式:consecutive_diffs=(y-xfor(x,y)i

python - 批量计算成对距离而不在Tensorflow中复制张量?

我想在Tensorflow中计算一批特征的成对平方距离。我有一个使用+和*操作的简单实现平铺原始张量:defpairwise_l2_norm2(x,y,scope=None):withtf.op_scope([x,y],scope,'pairwise_l2_norm2'):size_x=tf.shape(x)[0]size_y=tf.shape(y)[0]xx=tf.expand_dims(x,-1)xx=tf.tile(xx,tf.pack([1,1,size_y]))yy=tf.expand_dims(y,-1)yy=tf.tile(yy,tf.pack([1,1,size_x])