2013-05-02 49 views
0

我有以下的列表(nodes):查找指數

nodeID, x, y, z=row 

我想找到的行其row[0]==nodeAID的索引。

我的代碼是:

nindF=[line[0].index(nodeAID) for line in nodes] 

,但它給我的錯誤:TypeError: expected a character buffer object

+0

被nodeAID應該是「nodeAID」?或者它是你在某處定義的變量? – 2013-05-02 23:21:01

+0

@RyanSaxe:對不起,是的,它是一個字符串。 – jpcgandre 2013-05-02 23:21:44

+0

節點的維度是什麼? – 2013-05-02 23:27:12

回答

1
nindF = [index for index, line in enumerate(nodes) if line[0].find(nodeAID) >= 0] 

這將返回與nodeAID開頭的所有行的索引列表。 如果你只關心的第一線,與nodeAID然後開始索引:

nindF = [index for index, line in enumerate(nodes) if line[0].find(nodeAID) >= 0][0]