新手學python錯誤(一) 刪除列表元素

2022-08-30 16:21:19 字數 747 閱讀 2330

刪除列表元素所犯下的錯誤:為什麼不能迴圈刪除該元素?怎麼這個元素還沒刪完?

eg:刪除列表中所有 『1』 的錯誤方法:

x = [1,2,1,2,1,2,1,2,1,1,1,1,1,1]

for i in

x:

if i == 1:

x.remove(i)

print(x)

輸出的是:

[2, 2, 2, 2, 1, 1, 1]

而正確的方法是:

for i in

x[::]:

if i == 1:

x.remove(i)

另外比如這個:

刪除列表中第乙個元素:

x = list(range(20))

for i in

range(len(x)):

delx[0]

print(x)

輸出的卻是:

結論是:

出現這個問題的原因是列表的自動記憶體管理功能。在刪除列表元素時,python 會自動對列表記憶體進行收縮並移動列表元素以保證所有元素之間沒有空隙,增加列表元素時也會自動擴充套件記憶體並對元素進行移動以保證元素之間沒有空隙。每當插入或刪除乙個元素之後,該元素位置後面所有元素的索引就都改變了。 ——《python程式設計(第2版)》 36頁

python常見新手錯誤

錯誤一 i nconsistent use of tabs and spaces in indentation 這個報錯就是混用了tab和4個空格造成的,檢查 要不全部用tab,要不全部用4個空格,或者用idle編輯器校正,我常選擇用notepad 進行 縮排的檢查。即可用消除該錯誤。錯誤二 syn...

0基礎新手學Python(一) 了解Python

問題一 什麼是python?答 python是一種解釋型的 物件導向的 動態資料型別的高階程式語言。問題二 學python可以幹什麼?答 python開發工程師 爬蟲工程師 資料分析 人工智慧等如圖 問題四 關於就業!答 轉行不易,所以唯有多努力!就業是個很現實的問題 學歷 經驗 技術 面試都是你要...

總結新手學CSS容易出現錯誤的內容

一些新手容易忽略或者出現錯漏的地方。1.首先是對於布局標籤的定義。有時候寫好了css,但是反覆除錯總發現效果差強人意,有那麼一塊空白,揮之不去。其實這就是對於標籤定義的不嚴謹造成的。因為在xhtml的部分標籤裡,有一些的預設屬性值不一定是為空或零的。例如form,p,他們的margin預設值並不是0...