python 不要使用可變類型作爲函數的默認值

1. 問題描述: 給Bus類賦值默認值[], 創建兩個類實例,兩個實例的pas指向同一個地址   原因:默認值,在函數定義時計算(通常是在加載模塊的時候),因此,默認值變成了函數的屬性,所以,初始化類對象的時候,只要默認值是可變對象,並且未傳入這個參數,這個類的這個參數,就會指向函數給默認值開闢的空間,   2. 防禦可變參數 如果定義函數接受可變參數,應該考慮是否期望修改傳入的參數 1. 修改傳
相關文章
相關標籤/搜索