2012-07-30 29 views
0

我對Python很新,對lxml更新,但是我想要做的事似乎很簡單,但我無法弄清楚我做錯了什麼。迭代lxml表單提交的列表

我有這樣的代碼餵養值的列表(列表對象ISBN)的目標只限於lxml提交到搜索字段:

for i in ISBN: 

    page.forms[0].fields['_nkw'] = ISBN[i] 
    blah blah blah 

我得到這個錯誤後運行:

Traceback (most recent call last): 

page.forms[0].fields['_nkw'] = ISBN[i] 
TypeError: list indices must be integers, not str 

顯然必須有通過值喂到窗體列表進行迭代的一種方式,但顯然我不知道它:)

編輯:FYI更換ISBN代碼時工作正常[I]哈日d輸入。 編輯2:根據要求ISBN列表對象的內容:

['9781608319053', '9780321558237', '9781932735413', '9781416059516', '9781437708257', '9780781780582', '9781437701517', '9780323065801', '9780890420256', '9780323079334', '9781599417042', '9780781771535', '9781416031215', '9780312601430', '9780781775250', '9781591263333', '9780071748896', '9780133669510', '9781416045748', '9780781771566', '9781437728019', '9780323065849', '9781416066675', '9780735579965', '9780323078917', '9781437735826', '9781603595681', '9780321696724', '9780321558145', '9781933107981', '9780138024611'] 
+0

什麼是'型ISBN'?它是一個列表還是一本字典?它的內容是什麼? – Blckknght 2012-07-30 01:41:26

回答

1

麻煩的是與你的環比和使用ISBN變量。您不需要在分配過程中將其編入索引,因爲i已包含列表的一個元素,並作爲循環的一部分提取。你會得到一個異常,因爲你不能用一個字符串索引一個列表,即使這個字符串本身出自列表。

取而代之,使用page.forms[0].fields['_nkw'] = i

或者,如果你需要的索引,你沒有表現出ISBN列表供以後的代碼,保持分配,因爲它是,並且改變環路聲明:

for i in range(len(ISBN)):