Python基礎四(for迴圈 列表)

2021-10-19 12:58:53 字數 3655 閱讀 2991

列表

i =

0while i <5:

i +=

1if i ==3:

break

print

(i)#輸出結果為:0 1 2

i =

0while i <5:

i +=

1if i ==3:

continue

print

(i)#輸出結果為:1 2 4 5

for迴圈
語法

for 變數 in 序列(遍歷的規則):

**塊

range(start, stop[, step])

引數說明

range(開始位置,結束位置,步長)開始位置可以省略,省略即開始位置數為0,步長省略即為1,左閉右開區間

基本概念

序列的分類 列表

列表的使用

步長表示每次獲取元素的間隔,預設是1(可以省略不寫)

步長不能是0,但可以是是負數

切片[0:0]時,會在第乙個數字前插入,如果是字串,字串會被拆分

a =[1

,2,3

,4,5

,6]a[

0:0]

="abc"

print

(a)#輸出結果為:['a', 'b', 'c', 1, 2, 3, 4, 5, 6]

a =[1,

2,3,

4,5,

6]a[0

:0]=

["abc"

]print

(a)#輸出結果為:['abc', 1, 2, 3, 4, 5, 6]

切片設定步長的時候,取到多少個資料,替換的資料就要有多少個,不然會報錯

a =[1

,2,3

,4,5

,6]a[

::2]

=["abc"

,"abc"

,"abc"

]print

(a)#輸出結果為:['abc', 2, 'abc', 4, 'abc', 6]

通用操作

a =[1

,2,3

]+[4

,5,6

]print

(a)#輸出結果為:[1, 2, 3, 4, 5, 6]

a =[1,

2,3]

*2print

(a)#輸出結果為:[1, 2, 3, 1, 2, 3]

list.count(x) 統計指定元素在列表**現的個數

修改列表

列表的方法

insert(要插入的位置,要插入的元素) 向列表指定位置插入乙個元素

extend(iterable) 使用乙個新的序列來擴充套件當前序列(它會將該序列的中元素從後面插入到列表中) 引數需要傳遞乙個序列

pop() 根據索引刪除並返回指定元素

remove() 刪除指定元素 (如果相同值的元素有多個,只會刪除第乙個)

reverse() 翻轉列表

sort(key=none,reverse=false) 用來對列表中的元素進行排序 reverse:true反序;false 正序

實戰演練:

現在有 a = [1,2,3,4,5,6] 不通過函式的形式實現列表的反轉([6,5,4,3,2,1]) 並寫出推導過程

#方法一

a =[1,

2,3,

4,5,

6]b =[

]for i in

range

(len

(a)):)

)print

(b)#方法二

a =[1,

2,3,

4,5,

6]a.reverse(

)print

(a)#方法三

a =[1,

2,3,

4,5,

6]a.sort(reverse=

true

)print

(a)

給 使用者9次機會 猜1 - 10 個數字隨機來猜數字。如果隨機的數字和使用者輸入的數字一致則表示正確,如果不一致則表示錯誤。最終結果要求使用者怎麼也猜不對

i =

1num =[1

,2,3

,4,5

,6,7

,8,9

,10]while

(i<10)

: x =

int(

input

("請輸入乙個1-10的數字:"))

if x not

in num:

print

("這個數字猜過了"

)continue

num.remove(x)

i +=

1print

("沒猜對"

)print

(f"正確的數字是"

)

有兩個列表 lst1 = [11, 22, 33] lst2 = [22, 33, 44]獲取內容相同的元素

lst1 =[11

,22,33

]lst2 =[22

,33,44

]lst3 =

for i in lst1:

if i in lst2:

print

(lst3)

現在有8位老師,3個辦公室,要求將8位老師隨機的分配到三個辦公室中

teacher =[1

,2,3

,4,5

,6,7

,8]offic =[[

],,]

for i in

range

(len

(teacher)):

a = teacher[i-1]

random.choice(offic)

print

(offic[0]

,offic[1]

,offic[2]

)

現在有8位老師,3個辦公室,要求將8位老師隨機的分配到三個辦公室中,要求每個辦公室至少有乙個老師

teacher =[1

,2,3

,4,5

,6,7

,8]offic =[[

],,]

for i in

range

(len

(teacher)):

a = teacher[i]

random.choice(offic)

if a ==

8and

in offic:

offic.remove(

)[8]

)print

(offic[0]

, offic[1]

, offic[2]

)

python實現迴圈列表

class loop queue2 object 實現迴圈列表 def init self,maxsize 初始化,命令頭部元素的序號,尾部元素的序號,定義序列列表 param maxsize 傳入列表的最大長度 self.queue none maxsize self.maxsize maxsiz...

python 迴圈列表中字典元素

1.目的 實現列表中字典kay value的遍歷 迴圈列表中字典元素 info list 第一種方式 index 0 while index print name s nage s nhight s info list index name info list index age info list...

Python基礎語法 迴圈(四)

前言這是這一階段對迴圈語法練習的乙個實踐練習分享及總結 題目找出乙個整數的所有最小因子,即所有因子均為素數因子,例如8的所有因子即為2,2,2。思路解析 在程式設計前先進行梳理整個解題過程,首先是需要找到整數的因子,同時對因子進行素數的判斷並將非素數因子進行分解,同時需要注意因子是成對出現的,而分解...