Python 如何避免违反直觉的裸体行为
考虑以下几点:Python 如何避免违反直觉的裸体行为,python,numpy,types,Python,Numpy,Types,考虑以下几点: foo = np.array(['a', 'b', 2]) bar = [x for x in foo if isinstance(x, str)] 令我惊讶的是,结果是: ['a', 'b', '2'] 所以2变成了一根弦。我理解numpy是用来处理同构阵列的,但这仍然是不受欢迎的行为,最好避免。建议?Numpy在您的案例中假设strdtype。明确传递dtype,例如: foo=np.array(['a','b',2],dtype=object) 条形图=[x代表foo
foo = np.array(['a', 'b', 2])
bar = [x for x in foo if isinstance(x, str)]
令我惊讶的是,结果是:
['a', 'b', '2']
所以2变成了一根弦。我理解numpy是用来处理同构阵列的,但这仍然是不受欢迎的行为,最好避免。建议?Numpy在您的案例中假设
str
dtype。明确传递dtype
,例如:
foo=np.array(['a','b',2],dtype=object)
条形图=[x代表foo中的x,如果存在(x,str)]
我不确定您的问题出在这里,但我想您希望该列表只包含字符串/字母字符/单词
将numpy导入为np
lst=['a','b',2]
#[a',b',2]
foo=np.array([如果str(each).isalpha(),则lst中的每个都对应于每个])
#数组(['a',b',dtype=”你期望或希望得到什么?@MarkMeyer这(a)不是很令人满意,而且(b)也不明显有效,因为熊猫和numpy一样,会将列中的所有内容都投射到“object”@norok2,这是个笑话,对吧?如果不是,我期望['a',b']
我不确定您是否对foo
或bar
的内容不满意。我的问题之一是,我输入了2
,然后返回'2'
。您没有发现问题吗?您没有在问题中明确说明您的问题所在