python中容易犯的錯誤

2021-08-20 22:29:46 字數 346 閱讀 5178

python寫**時,在條件語句中老是忘記加判斷導致出錯。

(1)對於鍊錶、樹的資料結構,當node不為none,假如要訪問node.next.next時,經常就直接寫node.next.next(或node.left.left),導致程式經常報錯「nonetype」object has no attribute 「left(next)」。一般這種情況應該先對node.next(或node.left)進行判斷是否為none。

(2)在遞迴函式中,當傳遞的引數為不可變物件時,這意味著引數的傳遞是值傳遞方式,因此子遞迴返回到父遞迴函式中時,

父遞迴傳入到子遞迴中的不可變物件改變,但是父遞迴中的不可變物件是不會改變的

引用容易犯的錯誤。

由於物件a是個區域性物件,因此當函式物件func結束後,區域性物件a也就被刪除了。由於物件a消失了,所以func 函式返回的其實是乙個並不存在的物件的別名。用這個不存在的物件來呼叫該物件的函式get 該函式會返回乙個並不存在的物件的x成員。因此輸出乙個隨機數。如果這樣,那輸出就是23,為什麼?因為去...

指標經常容易犯的錯誤

以下內容摘自林銳博士的 高質量的c c 程式設計 雖然網上對這本書 文章?的評價不高,但是個人覺得,記憶體管理這章還是有些地方可以借鑑的。因此,摘錄這些內容算是乙個複習和總結吧!1指標與陣列的對比 1.1修改內容 char a hello a 0 x ok char p hello p 0 x er...

!!!!新手最容易犯的錯誤

今天寫了乙個很簡單的程式,輸入三個不同長度的字串,然後將其右對齊顯示 因為剛學了幾天,經常會犯一些錯誤,如下 file day01.py line 62 print maxn len b b syntaerror invalid syntax 以上是之前的錯誤,找了好半天,也一直沒有發現,從頭到尾推...