1. 程式人生 > >python的關鍵字與引數名衝突的解決方法

python的關鍵字與引數名衝突的解決方法

在呼叫BeautifulSoup模組中的find的函式時,由於需要指定tag中name的屬性,而與find函式的位置引數產生了衝突。 find函式原型如下: find( name, attrs, recursive, text, **kwargs) 而需要呼叫它的程式碼如下: lt = soup_login.find( "input",  name = 'lt' ) 上面的程式碼是為了找到name='lt'的input標籤,然而input的name屬性和find函式原型的第一個位置引數產生了衝突,會報錯: TypeError: select() got an unexpected keyword argument 'name'
在BeautifulSoup的官方文件上面只講了部分與python關鍵字衝突的解決辦法,這種情況我沒找到。 不過,以上問題可以通過find函式中的attrs來解決,將以上程式碼修改如下: lt = soup_login.find( "input", attrs = { 'name':'lt' } ) 執行後,能正確找出該input便籤。 ps:這種方法對於其他引起衝突的關鍵字也適用,直接將引起衝突的加入到attrs字典裡面即可 [email protected] 版權所有---------------------------------------------