<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          10個非常適合菜鳥練手的Python項目,墻裂建議收藏!

          共 2115字,需瀏覽 5分鐘

           ·

          2021-03-30 16:24


          作者:菜鳥哥

          轉(zhuǎn)自:菜鳥學Python

          對于Python學習者來說,能夠熟練的掌握Python中簡潔而高效的編程技巧,不僅能夠提升程序的效率,更重要的是體現(xiàn)出編程者高超的編程能力。

          今天,小編就為大家分享十個Python的小案例,每個案例都有兩種解決方法,第一種方法相對小白,第二種方法則是屬于有經(jīng)驗的高手寫法。案例小,但是卻蘊含著Python編程的技巧,一起來看看吧。


          1.判斷一個列表中的數(shù)值是否全部小于某個數(shù)

          面對這個問題,其實常見的有2種解法

          方法1:最直觀的程序就是一個一個去判斷列表中的元素是否是小于某個數(shù)值,這樣的方法最容易想到,但是程序很冗雜。


          方法2:則是利用了兩個Python內(nèi)置函數(shù)+Python匿名函數(shù),一行代碼即可輕松的解決。


          如果大家對Python內(nèi)置函數(shù)不是很了解,歡迎大家去看一下我們之前發(fā)布的Python內(nèi)置函數(shù)最全總結(jié)的文章(福利來了!68個Python內(nèi)置函數(shù)最全總結(jié),建議收藏!)。


          2.對列表中的字符串按照特定要求進行排序

          對于列表中的字符串進行排序,對于排序算法比較熟悉的小伙伴,都會想到利用排序算法來解決,例如方法一就是利用的冒泡排序進行解決;


          而方法2僅僅利用內(nèi)置函數(shù)sorted一行代碼即可解決。不僅如此,對于排序的關(guān)鍵詞指定方面,還可以自己設(shè)置排序的函數(shù),例如上面的firstC函數(shù),按照字符串的首字母進行排序。


          3.按照鍵或者數(shù)值對字典進行排序

          按照鍵或者值對字典進行排序

          方法1:可以利用sorted內(nèi)置函數(shù)進行排序后,再轉(zhuǎn)換成字典形式。這樣的方式在轉(zhuǎn)換的過程中會造成空間資源的浪費。


          方法2:則是直接利用了對于鍵或者值進行排序,再利用排序后的鍵或者是值來構(gòu)造最終的字典,且程序簡潔。


          4.將列表中的數(shù)字轉(zhuǎn)換成字符串


          上述的兩種方法中,小編個人認為都是很不錯的方法,方法1利用的是列表解析方案,通過循環(huán)迭代的方式產(chǎn)生新的列表。方法2利用的是map內(nèi)置函數(shù),將列表中的數(shù)字轉(zhuǎn)換為字符串。


          5.判斷列表中的元素是否都屬于一個類型


          方法1:采用的方法是逐個的判斷列表中的每一個元素,如果有任一個元素不是字符串,則輸出False。當全部循環(huán)結(jié)束后,如果index數(shù)值等于列表總長度,則輸出True。

          方法2:依舊是利用map函數(shù)來判斷列表中的每個元素是否滿足函數(shù)checkStr。利用all函數(shù)來得到最終的結(jié)果。


          6.反轉(zhuǎn)列表


          方法1:用到的方法是創(chuàng)建一個新的列表對象,并將list6中的元素按照從后向前的方式添加到新列表中。
          方法2:則有兩種方式,第一種方式是利用列表切片的方法,獲取反轉(zhuǎn)的列表。第二種方式是利用列表的reverse函數(shù),但是reverse函數(shù)只能在原列表中進行修改,不能創(chuàng)建一個新的列表。


          7.從可迭代對象中隨機選擇一個元素

          在Python中進行隨機數(shù)值的選擇,可以利用Python的內(nèi)置庫random,上圖函數(shù)中,choice函數(shù)是從列表中隨機選擇一個數(shù)值,choices函數(shù)又放回的選擇k個數(shù)值,sample則是無放回的選擇k個數(shù)值。


          8.利用列表創(chuàng)建字典

          方法1:利用列表創(chuàng)建字典,利用for循環(huán)的方式,在字典中創(chuàng)建鍵值對的item。

          方法2:利用zip內(nèi)置函數(shù),創(chuàng)建一個zip對象,并利用dict函數(shù)將zip對象轉(zhuǎn)化為字典,一行代碼搞定。


          9.篩選出以元音字母開頭的字符串

          方法1:對于list9中的每個字符串元素進行判斷處理,如果字符串的第一個字母是原因字母,則將該字符串添加到新的列表new_list9中。


          方法2:直接利用了列表解析或者是通過filter函數(shù)來過濾list9中滿足匿名函數(shù)的元素,相比于map函數(shù),filter函數(shù)能夠直接過濾出來滿足條件的元素值。


          10.創(chuàng)建一個計數(shù)字典

          創(chuàng)建一個數(shù)值統(tǒng)計的字典
          方法1:首先創(chuàng)建一個字典,字典的鍵包含了list10中所有出現(xiàn)過的元素,然后逐一統(tǒng)計列表中元素出現(xiàn)的次數(shù)。

          方法2:是借用了collections庫中的Counter類,直接統(tǒng)計list10中元素的個數(shù),然后利用dict函數(shù)來講Counter對象轉(zhuǎn)化為字典對象。


          總結(jié)
          通過上述的十個小案例的分享,可以看到,每個案例中都蘊含著利用Python的內(nèi)置函數(shù)來優(yōu)化程序的智慧,平時大家在程序編寫的過程中,也要善于挖掘和思考,如何充分利用Python的現(xiàn)有函數(shù)來讓自己的程序更加的優(yōu)美。
          這不僅能夠提升程序的美感,還能提升程序的運行效率,特別是針對于大量數(shù)據(jù)的處理過程。大家有什么想要說的,歡迎在下方留言~

          往期精彩:

          【原創(chuàng)首發(fā)】機器學習公式推導與代碼實現(xiàn)30講.pdf

          【原創(chuàng)首發(fā)】深度學習語義分割理論與實戰(zhàn)指南.pdf

           談中小企業(yè)算法崗面試

           算法工程師研發(fā)技能表

           真正想做算法的,不要害怕內(nèi)卷

           算法工程師的日常,一定不能脫離產(chǎn)業(yè)實踐

           技術(shù)學習不能眼高手低

           技術(shù)人要學會自我營銷

           做人不能過擬合

          點個在看

          瀏覽 19
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产精品腿扒开做爽爽爽挤奶网站 | 欧美乱伦第一页 | 苍井空在线视频一区二区三区 | 国产三级日韩三级欧美三级 | 人妻喷水视频 |