錯誤如下:
TypeError: list indices must be integers or slices, not str
錯誤代碼塊:
- aa是一組list套dict數據
- 函數insert接收2個參數,*args,**kwargs
- 我希望把aa這個list傳給*args,
- 但在執行程序時卻報了一標題顯示的錯誤
首先是關於*args,**kwargs的基本概念:
對於*args和**kwargs在函數中我們可以稱之為參數組,但是這兩個還是有區別的
1:*args的功能:------接收N個位置參數,轉換成元組tuple形式
2:**kwargs的功能------接收N個關鍵字參數,轉換成字典dict形式
3:位置參數一定要在關鍵字參數之前,也就是(*args,**kwargs)
更多詳細內容參照:
https://blog.csdn.net/qq_29053519/article/details/78671323
問題分析:
參數aa前面加*號表示它是一個已經組裝好的tuple,否則python會認為aa是一個位置參數
所以這樣修改程序即可按照預期運行: