【发布时间】:2018-07-26 18:39:23
【问题描述】:
hid = []
for counter,value in enumerate(alist):
idx1 = np.where(attr['xval'].values == value[0]) #Find Serial index
idx2 = np.where(attr['xval'].values == value[1])
hid.append(idx1)
hid.append(idx2)
这给了我这个hid
[(array([7467]),),
(array([7473]),),
(array([7403]),),
(array([7410]),),
(array([7386]),),
(array([7409]),),
(array([7380]),),
(array([7439]),),]
所有,我想要的是拥有这些值的列表/数组并将1 添加到每个值。
print(idx1[0])+1
Error: TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
有没有更好的方法来做到这一点?由于元组是不可变的,我该怎么做?
列表
[array([511, 517], dtype=int32),
array([447, 454], dtype=int32),
array([430, 453], dtype=int32),
array([424, 483], dtype=int32)]
【问题讨论】:
-
为什么要创建
hid,然后使用print(idx1[0])+1? -
print(idx1[0])什么也不返回。建议:去掉多余的信息,只提供你想要的。我不明白你在问什么。 -
是的,有两个问题。
+1需要在print()内部,但我也不明白为什么要创建hid然后开始引用idx1。我不确定你要做什么 -
元组是不可变的,因为它的对象指针不能更改。但是如果这些对象本身是可变的,它们就可以被改变 - 就地。
标签: python arrays list numpy tuples