python高級特性-迭代

2.迭代

定義:如果給定一個list或tuple,我們可以通過for循環(huán)來遍歷這個list或tuple,這種遍歷我們稱為迭代Iteration(。)

用什么語句來實現(xiàn)迭代呢?

答:for...in

python的for循環(huán)抽象程度要高于C的for循環(huán),因為python的for循環(huán)不僅可以用在list或tuple上,還可以作用在其他可迭代對象上。

python用于dict的迭代:

L={'a':1,'v':2,'f':4}

for a in L:

print(a)

例子可以見,dict默認情況下迭代的是key。如果要迭代value呢,要怎么解決呢?

答:可以用for value in d.value().

如:

L={'a':1,'v':2,'f':4}

for value in L.values():

print(value)

如果要同時迭代key和value呢?

答:for k,v in d.items()

如:

L={'a':1,'v':2,'f':4}

for k,vin L.items():

print(k,v)

字符串是否能迭代呢?

答:可以

如:

a='abcjdjdk'

for i in a:

print(i)

已知一個數(shù)據(jù),怎么判斷是否可以迭代呢?

答:通過collections模塊的terable類判斷:

from collectionsimport Iterable

isinstance([1,2,3],Iterable)

請問python能像Java一樣遍歷下標的方式么?可以用什么辦法呢?

答:能,python內(nèi)置的enumerate函數(shù)可以把一個list變成索引-元素對,這樣就可以在for循環(huán)中同時迭代索引和元素本身:

如:

for i,v in enumerate(['a','v','h']):

print(i,v)

實例:

應(yīng)用迭代找到列表內(nèi)的最大最小值:

import random

def max_min(a):

if a ==[]:

return (none,none)

else:

min_data=a[0]

max_data=a[0]

for iin a:

if min_data

min_data=i

if max_data>i:

max_data=i

return(min_data,max_data)

a=list(range(1,15))

random.shuffle(a)

print(max_min(a))

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • pyspark.sql模塊 模塊上下文 Spark SQL和DataFrames的重要類: pyspark.sql...
    mpro閱讀 9,930評論 0 13
  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi閱讀 7,872評論 0 10
  • Lua 5.1 參考手冊 by Roberto Ierusalimschy, Luiz Henrique de F...
    蘇黎九歌閱讀 14,259評論 0 38
  • "use strict";function _classCallCheck(e,t){if(!(e instanc...
    久些閱讀 2,153評論 0 2
  • 快瞅瞅!這眉眼像不像我?像不像?像不像? 他最近不敢當(dāng)我面上秤了。 我猜他八成快125斤了!我不到95好不好?他比...
    0懶亮亮0閱讀 269評論 0 0

友情鏈接更多精彩內(nèi)容