识别python数组中的字符串[重复]
Posted
技术标签:
【中文标题】识别python数组中的字符串[重复]【英文标题】:Identify the strings in python array [duplicate] 【发布时间】:2018-05-04 01:52:01 【问题描述】:我有一个类似的数据,
import numpy as np
A = np.array( [['1','2','3'], ['a','3','5']] )
现在我要识别'a'
的单元格地址。为此,我尝试了以下代码,
for i in range(0,2):
for j in range(0,3):
if (type(float(A[i,j])) == float):
print(str(i)+str(j))
由于'a'
无法转换为浮点数,因此显示以下错误。
00
01
02
Traceback(最近一次调用最后一次):
文件“”,第 3 行,在
if (type(float(A[i,j])) == float):
ValueError: 无法将字符串转换为浮点数:'a'
请帮忙。提前谢谢你。
【问题讨论】:
你不需要使用A[i][j]
或者是一些花哨的numpy
魔法吗?
您的数据将只有一个字符?然后你可以使用isdigit
和docs.python.org/3/library/stdtypes.html
@SumnerEvans __getitem__
的 numpy
数组接受元组!
everything 是数组中的一个字符串。你为什么还要在这里使用numpy
?
@timgeb,太酷了!我以前从未使用过 numpy,所以这真的很整洁。
【参考方案1】:
你可以试试这个
import numpy as np
def is_number(s):
try:
int(s)
return True
except ValueError:
return False
A = np.array( [['1','2','3'], ['a','3','5']] )
for i in range(0,2):
for j in range(0,3):
if not is_number(A[i][j]):
print i , j
【讨论】:
以上是关于识别python数组中的字符串[重复]的主要内容,如果未能解决你的问题,请参考以下文章