相关疑难解决方法(0)

如何并行迭代两个列表?

我在Python中有两个迭代,我想成对地遍历它们:

foo = (1, 2, 3)
bar = (4, 5, 6)

for (f, b) in some_iterator(foo, bar):
    print "f: ", f, "; b: ", b
Run Code Online (Sandbox Code Playgroud)

它应该导致:

f: 1; b: 4
f: 2; b: 5
f: 3; b: 6
Run Code Online (Sandbox Code Playgroud)

一种方法是迭代索引:

for i in xrange(len(foo)):
    print "f: ", foo[i], "; b: ", b[i]
Run Code Online (Sandbox Code Playgroud)

但这对我来说似乎有点不合时宜.有没有更好的方法呢?

python iterator for-loop list

767
推荐指数
6
解决办法
58万
查看次数

在Python中减去2个列表

现在我将vector3值表示为列表.有没有办法减去其中2个像vector3值,比如

[2,2,2] - [1,1,1] = [1,1,1]
Run Code Online (Sandbox Code Playgroud)

我应该使用元组吗?

如果它们都没有在这些类型上定义这些操作数,我可以改为定义它吗?

如果没有,我应该创建一个新的vector3类吗?

python tuples list vector

75
推荐指数
8
解决办法
13万
查看次数

将嵌套的数据列表转换为多维Numpy数组

在下面的代码中,我将在嵌套列表中构建数据.在for循环之后,我想要尽可能整齐地将它转换为多维Numpy数组.但是,当我对它进行数组转换时,它似乎只将外部列表转换为数组.更糟糕的是,当我继续向下时,我最终将dataPoints作为形状(100L,)......所以列表数组中每个列表都是我的数据(显然我想要一个(100,3)).我也试过愚弄,numpy.asanyarray()但我似乎无法解决这个问题.如果可能的话,我真的很喜欢我的3D列表中的3d数组.如果没有,我如何将列表数组放入二维数组而不必迭代并将它们全部转换?

编辑:如果它使处理更容易,我也会从一开始就更好地构建数据.但是,它是通过串行端口进行的,并且事先不知道大小.

import numpy as np
import time

data = []
for _i in range(100):   #build some list of lists
    d = [np.random.rand(), np.random.rand(), np.random.rand()]
    data.append([d,time.clock()])

dataArray = np.array(data)  #now I have an array of lists of a list(of data) and a time
dataPoints = dataArray[:,0] #this is the data in an array of lists
Run Code Online (Sandbox Code Playgroud)

python numpy list slice

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

list ×3

python ×3

for-loop ×1

iterator ×1

numpy ×1

slice ×1

tuples ×1

vector ×1