for迴圈迭代列表的常用方法

2021-10-10 13:34:40 字數 2237 閱讀 6795

1.什麼是for迴圈

for 迴圈又稱為計數迴圈,是因為 for 迴圈次數由可迭代物件來決定,我們學過的字串就是可迭代物件。

例如:列表、元組、字典、集合等都屬於可迭代物件。現在大家可以用for迴圈來判斷物件是否是可迭代的。

2.簡單的寫乙個for迴圈

for迴圈可以把字串裡面的每個元素都依次取出來,自動賦值給變數 i, 然後再執行迴圈體內的**塊,for迴圈不需要考慮迴圈次數,迴圈次數由後面的物件長度來決定,我們簡單來看一下

for i in

'python'

:print

(i)##輸出如下:

##p##y

##t##h

##o##n

2.for迴圈應用的列表

(1)刪除重複的元素不保留一位重複的元素

li =[1

,2,1

,1,3

,4,5

,1]for i in li:

if i ==1:

li.remove(i)

print

(li)

## [2, 3, 4, 5, 1]

很顯然這種方式是不對的,沒有刪除乾淨

a=[1

,1,2

,3,4

,5,1

,1]b=a.copy(

)for i in b:

if i ==1:

a.remove(i)

print

(a)##[2, 3, 4, 5]

這種方式就是複製了列表a,迭代了列表b然後b有的元素,a就刪除重複的元素

a=[1

,1,2

,3,4

,5,1

,1]for i in

range

(len

(a)-1,

-1,-

1):if a[i]==1

: a.remove(a[i]

)print

(a)##[2, 3, 4, 5]

這種方法是倒敘,這樣就避免了因為刪除了元素之後會繼續迭代而列表卻會向前推進一位的方法。

我們來看下這種,刪除重複元素且保留一位重複的元素

a =[1

,1,1

,3,4

,5,7

,8,1

,1]b =

for i in a:

ifnot i in b:

print

(b)##[1, 3, 4, 5, 7, 8]

這種方式我是最喜歡最常用的一種方法

(2)寫乙個函式實現將包含100個元素的列表隨機分成12分

import random

li =

[random.randint(1,

100)

for i in

range

(100)]

li1 =

n =8

for i in

range(12

):) li.remove(li[i]

)li =

([li[i : i+n]

for i in

range(0

,len

(li)

,n)]

)print

(i)print

(li)

##[[40, 28, 55, 97, 29, 90, 41, 96], [88, 10, 34, 68, 55, 83, 15, 100], [28, 54, 27, 99, 74, 82, 70, 95], [27, 46, 24, 59, 70, 44, 55, 60], [85, 15, 40, 57, 44, 81, 68, 36], [73, 9, 97, 94, 45, 52, 100, 82], [17, 54, 52, 83, 65, 52, 33, 94], [7, 64, 27, 93, 55, 16, 23, 7], [39, 15, 7, 80, 23, 82, 75, 55], [86, 42, 61, 1, 81, 14, 96, 77], [82, 58, 43, 69, 55, 1, 60, 34], [73, 22, 33, 77, 16, 68, 96, 60, 58, 4, 51, 92]]

這裡我運用了random模組,運用了列表推導表示式,分成的12個列表裡面的元素都不會是重複的剛剛好

列表常用的方法

list 10,1.34,34,hello true list.insert index.e 把元素e新增到索引為index的位置 list.insert 1,anzhuo print list 2修改的方法,列表名 索引 資料 list 0 python print list 3刪除的方法 lis...

列表常用方法

列表 name who where how 1.切片 左閉右開 name name name 0 4 who 2.追加 3.插入 name.insert 1,loser who loser where how 4.修改 name 1 victor who victor how 5.刪除 name.r...

測試方法復用 迴圈迭代執行

在前一篇文章 中,寫了在測試方法中迴圈讀取同一引數。今天要介紹的是不同於前一篇文章中寫的2種策略。這次的策略更完善,已經付諸實踐,在專案測試中取得了成效。首先介紹乙個新概念 執行次序 迭代次序 先舉個栗子 testa 方法測試的是使用者登入,裡面有2個變數username password。現在我要...