<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        舉例講解如何在Python編程中進行迭代和遍歷

        來源:懂視網 責編:小采 時間:2020-11-27 14:35:11
        文檔

        舉例講解如何在Python編程中進行迭代和遍歷

        舉例講解如何在Python編程中進行迭代和遍歷:迭代 首先理解下什么是迭代,python中所有從左往右掃面對象的方式都是可迭代的 有哪些方式是可迭代的: 1.文件操作 我們讀取文件的時候,會用到一個readline()方法,其實它就是一個迭代器,它會返回當前的數據,然后自動的調用內置的next()方法來讓文件的讀
        推薦度:
        導讀舉例講解如何在Python編程中進行迭代和遍歷:迭代 首先理解下什么是迭代,python中所有從左往右掃面對象的方式都是可迭代的 有哪些方式是可迭代的: 1.文件操作 我們讀取文件的時候,會用到一個readline()方法,其實它就是一個迭代器,它會返回當前的數據,然后自動的調用內置的next()方法來讓文件的讀

        迭代
        首先理解下什么是迭代,python中所有從左往右掃面對象的方式都是可迭代的

        有哪些方式是可迭代的:

        1.文件操作

        我們讀取文件的時候,會用到一個readline()方法,其實它就是一個迭代器,它會返回當前的數據,然后自動的調用內置的next()方法來讓文件的讀取頭自動的移動到當前的下面一行,準備下次的讀取,到達文件末尾時,就會返回空字符串.

        >>> f=open('hello.py')
        >>> f.readline()
        '#!/usr/bin/python2.5
        '
        >>> f.readline()
        'print "hello.word!"
        '
        >>> f.readline()
        '
        '
        >>> f.readline()
        ''
         
        >>> for i in open('hello.py'):
        ... print(i)
        ... 
        #!/usr/bin/python2.5
        print "hello.word!"
        

        用上面這樣方式來讀取文件內容的話,速度很快,內存占用也比較低,特別適合操作大文件.

        下面這個方式適合操作一些小的文件,速度和效率沒有上面的好,所以建議以后操作文件的話,盡量用上面的。

        >>> for i in open('hello.py').readlines():
        ... print i
        ... 
        #!/usr/bin/python2.5
        print "hello.word!"
        

        read方法和readline方法,
        read()方法把整個文件的內容放到字符串里
        readline()方法則把文件的內容按照行為單位放到列表里。
        一般要替換文件里的某個字符的話,最好有readline,然后用循環把一行一行內容循環出來,再查找替換,這樣效率比整個讀到一個字符串里來查找匹配效果更高。

        2 for循環

        例如:

        >>> for i in range(5):
        ... print(i)
        ... 
        
        

        它中間處理的過程和下面的是一樣的:

        >>> L=[0,1,2,3,4]
        >>> I=iter(L)
        >>> I.next()
        0
        >>> I.next()
        1
        >>> I.next()
        2
        >>> I.next()
        3
        >>> I.next()
        4
        >>> I.next()
        

        Traceback (most recent call last):
         File "", line 1, in 
        StopIteration
        

        每次調用迭代器調用next()方法返回結果,并讓文件指針往下移動一行,最后已StopIteration異常結束迭代。


        3.列表解析:

        相比python for循環速度會快很多

        例如:

        >>> L=[x+10 for x in range(10)]
        >>> L
        

        [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
        python會在解釋器里對range(10)進行迭代,依次把列表里的內容取出來,賦值給最左邊的x,然后執行x+10的操作,
        并且把執行好的結果保存在列表里。等range(10)迭代完以后就新生成了一個列表,結果就是[10,11,12,13,14,15,16,17,18,19]
        從上面可以看出,這也是建立python 列表的一個方法。

        上面例子也可以用for循環來實現.

        >>> res=[]
        >>> for x in range(10):
        ... res.append(x+10)
        ... 
        >>> res
        [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
        

        從上面可以看出,python列表解析比手動的for 更加精簡,而且運行的更快(往往速度回快一倍),因為他們的迭代在解析器內部是以C語言的速度執行的,而不是以手動python代碼執行的,特別對于較大的數據集合,這是使用列表解析的一個主要的性能優點.

        遍歷
        1.通過序列取元素的方法進行遍歷

        root@10.1.6.200:python# vim 3.py 
        

        #!/usr/bin/python2.5
        for i in 'hello': #序列里的字符串
         print i,
         
        y = [1,2,3,4,5,6] #列表
        for i in y:
         print i,
        

        root@10.1.6.200:python# python 3.py 
        

        h e l l o 1 2 3 4 5 6
        

        2.通過序列本身偏移指數(索引)的方法進行遍歷

        也就是迭代序列索引,注:迭代,重復執行一條指令.

        root@10.1.6.200:python# vim 3.py 
        

        #!/usr/bin/python2.5
        x='hello'
        for i in range(len(x)):
         print x[i]
         
        y = [1,2,3,4,5,6]
        for i in range(len(y)):
         print y[i],
        

        root@10.1.6.200:python# python 3.py 
        

        h e l l o 1 2 3 4 5 6
        
        

        字典有2種方式取到其值:

        1.先取字典key,在取索引的值

        root@10.1.6.200:python# vim 5.py 
        

        #!/usr/bin/python2.5
        z = {1:'a',2:'b',3:'c'}
        for i in z:
         print z[i]
        

        root@10.1.6.200:python# python 5.py 
        

        a
        b
        c
        

        2.通過字典items方法,獲取所有鍵值對,在利用元組拆分的方法獲得對應值.

        root@10.1.6.200:python# cat 5.py 
        

        #!/usr/bin/python2.5
        z = {1:'a',2:'b',3:'c'}
        print z.items()
        for m,n in z.items():
         print m,n 
        

        root@10.1.6.200:python# python 5.py

        [(1, 'a'), (2, 'b'), (3, 'c')]
        1 a
        2 b
        3 c

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        舉例講解如何在Python編程中進行迭代和遍歷

        舉例講解如何在Python編程中進行迭代和遍歷:迭代 首先理解下什么是迭代,python中所有從左往右掃面對象的方式都是可迭代的 有哪些方式是可迭代的: 1.文件操作 我們讀取文件的時候,會用到一個readline()方法,其實它就是一個迭代器,它會返回當前的數據,然后自動的調用內置的next()方法來讓文件的讀
        推薦度:
        標簽: python 迭代 遍歷
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 另类专区另类专区亚洲| 色哟哟国产精品免费观看| ass亚洲**毛茸茸pics| 亚洲中文精品久久久久久不卡| 亚洲va中文字幕| 无码av免费一区二区三区试看| 波多野结衣在线免费视频| 四虎永久在线精品视频免费观看| 亚洲精品成人av在线| 亚洲av成人中文无码专区| a国产成人免费视频| 天天摸天天操免费播放小视频| 亚洲一级片内射网站在线观看| 亚洲一级毛片视频| 在线观看av永久免费| 亚洲人JIZZ日本人| 免费观看亚洲人成网站| 全亚洲最新黄色特级网站| 亚洲一区二区三区无码国产| 女人18特级一级毛片免费视频| 婷婷亚洲综合一区二区| 日本免费网址大全在线观看| 久久亚洲精品成人综合| 黄页网址大全免费观看12网站| 在线观看av永久免费| 免费手机在线看片| va亚洲va日韩不卡在线观看| 久久九九久精品国产免费直播| 吃奶摸下高潮60分钟免费视频| 亚洲av成人综合网| mm1313亚洲精品国产| 午夜免费福利小电影| 亚洲日本一线产区和二线产区对比| 亚洲一区二区三区免费观看| 亚洲视频在线观看地址| 在线看片免费人成视频播| 国产人成亚洲第一网站在线播放| 久久精品网站免费观看| 精品亚洲AV无码一区二区三区 | 91亚洲国产在人线播放午夜| 一个人免费观看www视频在线|