日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python编程基础(一):编程思想

發(fā)布時間:2025/4/5 python 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python编程基础(一):编程思想 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

編程核心思想:以前我java老師曾告訴我們編程思想:初級選手應該從內而外、從小到大,先從實現(xiàn)一個簡單的小功能開始,一點一點往里加,最后讓功能變復雜(簡單->復雜:可以先假定最理想、最簡單的數(shù)據(jù),在最理想數(shù)據(jù)的基礎上實現(xiàn)之后,再測試修改麻煩的數(shù)據(jù)模式);而高級選手喜歡從上而下,從難到易,他們傾向于先搭建一個整體的結構框架,再由外而內地一點點地填充起內部簡單語句。

-->?當一個函數(shù)或算法太復雜時,可以分塊完成。比如,統(tǒng)計詞頻可以分為輸入、統(tǒng)計、輸出;SimHash算法可能分為擴展、加減權重、收縮等步驟。

--> 編程的精神是開源和共享,網絡上有很多可以實現(xiàn)某個功能的代碼片段,可以粘貼復制重復利用,而不用自己從頭到尾苦心孤詣地一點點寫。

工程思維

  • 需要再三再三再三明確具體需求。工程需求是最重要的,一定要仔細反復討論,容不得半點馬虎、模糊或不理解
  • 先形成一個規(guī)范、合理、準確的算法。
  • 然后,再用編程將其實現(xiàn)。
  • ==>科研和工程的區(qū)別

    • 科研注重的是研究,講求新;而工程注重的是應用,講求用,方法不必最新,能滿足需求應用就行。
    • 科研注重的是研究,關注研究的背景和意義;而工程注重的是方法能不能實現(xiàn)工程需求,方法能不能在實際環(huán)境中達到可用性。

    目錄

    ?

    1. 雙層循環(huán)思想

    2. 迭代思想

    3. 遞歸思想


    1. 雙層循環(huán)思想

    循環(huán)、迭代前提一定要弄清楚循環(huán)條件循環(huán)操作對象

    應用場景:重復反饋過程的活動,不過每一次重復都需要重新遍歷原數(shù)組。比如:最長回文字符串

    • ?遍歷一個數(shù)組或序列并在這個數(shù)組上進行操作,可以使用雙層循環(huán)控制。比如:
    • ?依次遞減需要檢測字符串的長度,直到子字符串為空,長度為0,這是一個典型的while循環(huán)呀
    • ?跳出雙層循環(huán)。break只跳出單層循環(huán),雙層循環(huán)需要兩個break和一個if trigger布爾邏輯判斷。

    應用方法:循環(huán)條件為長度判斷時->外層while循環(huán),內層for循環(huán);循環(huán)條件為中心或索引判斷時->外層for循環(huán),內層for循環(huán)

    應用案例:最大回文字符串;

    -->?雙層循環(huán)與迭代區(qū)別:雙層循環(huán)每一次重復都是對原數(shù)組進行操作;迭代是每一次重復的結果會作為下一次迭代的初始值,對更新后的數(shù)組進行操作。

    # 最大回文字符串-枚舉法 def verifyreverse(st):current = len(st)trigger = Falsewhile current > 0:for i in range(len(st) - current + 1):tmp = st[i:i + current]# print(tmp)if tmp == tmp[::-1]:target = tmptrigger = Truebreakcurrent -= 1if trigger:breakreturn targetprint verify reverse("efbaabdi")

    2. 迭代思想

    迭代(iteration):重復反饋過程的活動,每一次迭代的結果會作為下一次迭代的初始值。(A重復調用B

    應用場景:重復反饋過程的活動,不過每一次迭代的結果會作為下一次迭代的初始值,對更新后的數(shù)組進行操作。

    應用方法:left_index = 0; right = len(string) - 1?

    應用案例:二分法查找元素和元素索引

    --> 迭代和遞歸區(qū)別:迭代是A重復調用B;遞歸是A重復調用A

    3. 遞歸思想

    遞歸(recursion):遞歸常被用來描述以自相似方法重復事物的過程,在數(shù)學和計算機科學中,指的是在函數(shù)定義中使用函數(shù)自身的方法。(A調用A

    ?

    總結

    以上是生活随笔為你收集整理的python编程基础(一):编程思想的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。