乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Python小知識 | 這些技能你不會?(三)

       Four兄 2019-10-05

      一、字典和集合

      (1)字典

      Python里字典(dict)是一種比較常用的數(shù)據(jù)結(jié)構(gòu),基本格式{key : values},keyvalues可以為任意類型,比如int,str等。

      (2)集合

      Python里集合(set),可以使用大括號 { } 或者 set() 函數(shù)創(chuàng)建,可以稱為特殊列表,不能包含重復元素,另外需要注意:創(chuàng)建一個空集合必須用 set() 而不是 { },因為只用 { } 是用來創(chuàng)建,系統(tǒng)會默認為空字典。

      (3)小技能,模糊查找

      startswith 函數(shù)
      startswith函數(shù)用于檢查字符串是否是以指定子字符串開頭,如果是則返回 True,否則返回 False。如果參數(shù) beg 和 end 指定值,則在指定范圍內(nèi)檢查。
      參數(shù)介紹
      startswith(str, beg,end)

      str -- 檢測的字符串。
      beg -- 可選參數(shù)用于設(shè)置字符串檢測的起始位置。
      end -- 可選參數(shù)用于設(shè)置字符串檢測的結(jié)束位置。

      二、類和對象

      (1)基本介紹
      書上是這樣說的“信不信由你,從開始閱讀本書起,你就一直在使用Python對象”,我覺得,完全沒毛病,你有對象嗎?

      差點忘了,我這個是小技能,就不太細的去講這些理論性的東西了,下面圖片簡單介紹一下類與對象,覺得不錯點個贊哦~

      簡單介紹一下

      (2)創(chuàng)建類,創(chuàng)建對象,調(diào)用類方法

      創(chuàng)建類:class關(guān)鍵字,根據(jù)縮進確定類范圍

      創(chuàng)建對象: 對象 = 類名(變量) 如:t0 = Myclass()

      調(diào)用類方法:對象名.類方法名(參數(shù)) 如:t0.my_function()

      (3)最重要的init__()函數(shù) 

      Python 里由“__”開始的和結(jié)尾的為保留字。
      方法__init__是類最重要的方法之一,根據(jù)名字可以看出來,表示初始化,創(chuàng)建類對象的同時會自動調(diào)用這個方法,傳參給類變量,通過__init__函數(shù)是個不錯的選擇或者說唯一選擇。

      三、生成器

      在Python中,一邊循環(huán)一邊計算的機制,稱為生成器(Generator)。
      也可以這樣理解,生成器就是一個可以自動迭代的對象,類似于for循環(huán),又比for循環(huán)靈活。

      根據(jù)上面,我們大致了解到生成器就是一個可迭代的對象,用yield關(guān)鍵字可以實現(xiàn),上面已經(jīng)說了函數(shù)執(zhí)行到y(tǒng)ield語句,就會停止本次運行,返回yield后的參數(shù)或語句,等下次調(diào)用該函數(shù)時,會從上次暫停的地方開始繼續(xù)運行迭代,你肯定會想,那生成器到底有什么用呢?
      我們再來看一個實例:

      生成整數(shù)范圍內(nèi)的奇數(shù),很多人會覺得,我直接也可以生成啊,為什么要用yield改成生成器呢?你有沒有想過,整數(shù)內(nèi)的奇數(shù),雖然有一個范圍,但是,也還是很多的哈,你用什么存儲呢?生成器的好處就是,你需要多少個,或者說你需要哪一個,需要第幾個,我就給你找到這個數(shù),只要到了這個數(shù),我就停下來休息,等你下次想找別的了,我再接著繼續(xù)找,一樣的找到就休息,所以這樣我們就不用考慮,這么多數(shù)放哪個地方了。
      再來一個高級實例收尾:

      思路比較簡單,生成隨機數(shù),首先要有個隨機數(shù)種子(初始值),然后對初始值進行一些隨機操作,這里采用了擴大(與一個質(zhì)數(shù)相乘),回原(與另一個質(zhì)數(shù)取余),這樣反復做了兩次,最后與max_rand 取余,得出最終隨機數(shù),這樣一頓騷操作保證了數(shù)據(jù)的隨機性,中間操作要設(shè)計到恰到好處,比較難,像密碼學老師說的“你加密,又加密,再加密,又再加密···很可能最后出來的就是明文了”。

      最后介紹一下__next__()函數(shù),第一個實例就說了,生成器可以用for循環(huán)迭代,另外還有一個內(nèi)置函數(shù)__next__也是可以的,從名字可以看出就是調(diào)出下一個,示例如下:

      生成器給我最大的感受就是,我在使用的過程中,不用過多的考慮,這些數(shù)據(jù)可能會溢出,或者怎么樣,讓我更多的想我實現(xiàn)的功能怎么設(shè)計會漂亮一點,多看看,敲一下上面的實例代碼,就理解了,別妄想著看一遍就能懂,也不要邊看邊抓頭發(fā),有閑時候多出去走走,多敲敲代碼,看看電影,聊聊天,聽聽歌,看看書。。。(說多了,下次見:裝飾器)

      靈活應(yīng)用這些基本操作,讓你的工作學習事半功倍。

      堅持和努力:終有所獲。

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多