15課python快遞編程代碼人Python語法簡單才會越來越被編程界歡迎

2020-12-22 天天讀史

明確項目目的

分析流程,拆解項目

逐步執行,代碼實現

3.1 先能用

3.2 再改進

3.3 精細化

節課的項目和上個項目難度差不多,從我們學習完函數之後,我們就可以做出一些有用的程序了。這節課,我們做一個閃電快遞配送的項目, 用來解決快遞配送的人員與送貨量的配比問題。

這次開發實用程序的流程和上次是一模一樣。

接下來,我們一步一步來實現這個項目。明確項目目的先來看一下項目需求:

看完了項目需求,那個快遞老闆朋友又來了。

既然我那BOSS朋友要得急,那我們使用「敏捷開發」。 我們來分析一下這個項目。分析流程,拆解項目我們的任務就是做一個「快遞配送調配程序」,雖然這朋友要的比較著急,但是我們也不著急於編程開發,應該先梳理清楚需求,做出的程序功能達到什麼樣的效果。計算器,首先配送站BOSS要輸入信息,然後自動計算出結果。為了搞清楚計算過程,我們得到計算公式。梳理需求,得到下圖結果:

根據上面的分析,試著補全代碼,將計算公式寫在下面,運行程序。

因為這BOSS朋友著急,先做出程序,以後再優化吧。所以,我們把程序版本大致規劃成3個階段。

明確每個階段任務後,接下來我們逐步用代碼實現功能。

江湖秘籍:%f是字符串格式化,格式字符串為浮點數,%.1f的意思是格式化字符串為浮點數,並且保留一位小數。

發現:向上取整是math.ceil(), 括號內放數字。

也就是使用math.ceil()方法,就能把數字向上取整。並且在開始位置,有一句import math, 怎麼有些似曾相識. 在上個項目實戰中,我們使用隨機數,也用過import math代碼。

現在解決了項目bug,感覺應該可以了。

等等,BOSS朋友需要使用兩個函數才能計算配送次數,計算配送員數,有沒有辦法能夠讓她使用一個函數就能完成功能。

如何解決這個問題?還是用之前方法流程來處理:

要想實現這樣效果,我們怎麼傳遞參數,才能讓函數區分是【計算配送次數】還是【計算配送員數】。

OK,現在這個程序已經可以運行了。

但是,我們在調用函數的時候,你還要輸入參數名與參數值,太麻煩,我們能不能有個簡單方法。

是不是簡單的多了,但是還沒完。

BOSS朋友不想每次都去調用函數,才能計算結果,那就給她整個交互過程。

增加可交互性,讓BOSS朋友只輸入內容即可, 使用input()函數。

看,是不是可以輸入了。但是,有bug唉。不信,貼圖來看。

當我們選擇計算配送次數, 項目大小為2.2倍,快遞員數為1時。 計算工時:需要配送次數 = 2.2*100/20/1 ,得到的結果應該是11次,可是列印出來卻是12次。是為什麼呢? 還是老問題, python江湖中的除法,會將數字都轉換二進位再進行計算,得到的結果是一個二進位,造成數字增加。不信,你運行一下下面程序。

明可以整除的,造成還存在小數部分,然後向上取整後得到12。那麼有沒有辦法可以改變有, 我們使用math中的round函數。

是不是沒問題了。round()函數是python中提供解決小數的保留問題。此函數格式round(x ,n) x表示小數,n表示需要保留的小數位。我們保留小數2位,將round加入到我們的案例方法中。運行以下代碼,觀察終端結果。

BOSS朋友是不是可以輸入了。但是,按照函數封裝代碼的思想,我們現在代碼寫的很雜。那我們把它優化一下?怎麼優化呢?江湖箴言:創建一個主函數,用來調用其他子函數。這不就是函數的嵌套嗎?

在這裡函數BOSS_input()負責收集BOSS朋友輸入的數據;函數calculate_job()負責計算工作量.函數res()負責調用兩個函數,傳入參數.只要調用res()函數,就能讓整個程序跑起來。

是不是很完美了?這就是這節課完成的實用程序,解決快遞配送調配問題。

我要把我的程序送給BOSS朋友去了。

相關焦點

  • Python視頻教程網課編程零基礎入門數據分析網絡爬蟲全套Python...
    6套課程) 資料庫操作(1套課程) python高級編程(6套課程) 注:零基礎全能篇中,針對windows和liunx系統均有兩套課程可供選擇學習,單純學python,哪個系統都一樣,初學者只需選擇自己熟悉的系統學習相應課程即可。
  • 年薪30萬+的python編程難不難?好學嗎?
    python翻譯成中文就是蟒;蚺蛇的意思。在計算機專業裡面Python是一門課程,專門學習計算機編程的課程,是一種跨平臺的電腦程式設計語言。一種高級,熱門的程式語言。那python好學嗎?先來了解下python這門計算機語言的特點:1、語法簡略和傳統的 C/C++、Java、C# 等言語比較,Python 對代碼格局的要求沒有那麼嚴厲,這種寬鬆使得用戶在編寫代碼時比較舒暢,不用在細枝末節上花費太多精力。
  • 鄭州金水少兒編程Python10-16歲哪家好?
    能力的提升編程知識對標青少年編程能力等級第2部分:Python編程。學習樂博樂博Python基礎語法知識,包括順序結構、循環結構、分支結構的語法規則,教授孩子更多的源碼編程技巧,讓孩子逐步適應源碼編程的方式。
  • Python編程學了有用嗎?
    Python編程學了有用嗎?眾所周知,目前家長對於孩子的教育越來越重視,培養孩子的編程思維也是大家關心的話題,孩子學習Python語言,需要使用精確到標點、分號等特殊字符,可以提高孩子的編程能力和邏輯思維能力。作為成成年人學python編程可以大大提高工作效率。
  • 西安雁塔少兒編程Python10-16歲哪家好?
    課程介紹樂博樂博少兒編程Python少兒編程你了解嗎樂博樂博Python課程是基於CSTA頒布的《K-12 階段計算機科學標準》研發,採用圖形+源碼對照的編程模式,逐步讓孩子過渡到源碼編程的世界。  能力的提升編程知識對標青少年編程能力等級第2部分:Python編程。學習樂博樂博Python基礎語法知識,包括順序結構、循環結構、分支結構的語法規則,教授孩子更多的源碼編程技巧,讓孩子逐步適應源碼編程的方式。
  • python初學者必看的學習路線 Python是近幾年比較火的程式語言
    Python是近幾年比較火的程式語言之一,因為人工智慧的火爆,讓很多人都想從事python開發。很多零基礎學員在學習python的時候都會走一些彎路,下面小編就為大家分享python學習路線圖,幫助零基礎學員在學習的時候少走彎路。 很多人都在問Python學習步驟應該如何安排?
  • 職場提升新技能,風變編程Python讓繁瑣的工作自動化
    近年來,隨著人工智慧的飛速發展,作為人工智慧第一程式語言的Python越來越熱門,國家政策方面開始推廣編程教育,不少企業在招聘條件中都列出了「具備Python技能」的字樣。因此,很多比較有遠見的職場人士都開始考慮是否要學點Python知識傍身,以備不時之需。
  • python與c語言的語法有哪些不一樣的
    在眾多程式語言之中,想必很多人都聽說過Python和C語言,在進行編程學習之前,大家都會問:python和c語言的區別有哪些?我該如何選擇?接下來我們來看看吧。3、應用:Python是一種通用程式語言,多範式的,支持面向對象編程、程序編程以及函數編程;C是結構化程式語言,允許使用函數、選擇、迭代,主要用於硬體相關的應用程式。
  • Minecraft中的Python編程,Hello Minecraft World!
    ,對Minecraft進行操作,需要搭建的環境:1.Minecraft服務端,以及使用python與服務端進行通訊的插件這裡選用開源的Minecraft服務端Bukkit,以及RaspberryJuice插件。
  • Python編程:開發工具(IDE)大匯總(附官方下載)
    最近有多位讀者留言,諮詢更便捷、高效的python編程開發工具(IDE),本文就給大家介紹四款業內常用的python軟體開發工具,並簡單介紹下每款軟體的特點,便於讀者按需選擇合適的學習軟體!,支持實時編寫並運行代碼、方程式,同時支持可視化圖像輸出等等,其安裝與啟動方式很簡單:安裝python,請參考往期視頻教程:Python安裝全過程詳解與驗證方法安裝pip安裝器,請參考往期文章:Python神器:找不到模塊怎麼辦?
  • TIOBE 11 月程式語言:Python超越Java!
    每月更新的編程排行榜,如期而至。 20年間,Java和C都是交替登上第一和第二的位置。本月Python歷史性排名第二,超越了Java,可以被稱為編程歷史上的獨特事件。
  • 開始你的編程之旅吧!從Python入門講起……
    想要挑選一種語言開啟編程生涯,你可以考慮python,因為它的代碼非常簡潔可讀。我們會用語言給別人傳達一些信息,而編程也正是一種與計算機交流的語言。如果你需要與人類語言近乎相同的程式語言,那麼python適合你。當你和你的朋友說話時,你不需要在結尾加一個分號,也不需要提及你所談論的數據類型,這就是人類語言。
  • 《小灰教你零基礎學python》-Python入門語言
    >c語言php(有人稱php是最好的程式語言)這裡包括咱本套課程需要學習的python,其實理解咱這麼理解就行:咱們和外國人交流需要說英語,那麼咱們必須要學會英語才能和對方溝通;咱們需要讓電腦進行「溝通」就必須要使用程式語言。
  • 從內外兩個角度解析Python為什麼這麼火
    ,也是近幾年最為火熱的計算機程式語言,而Python是1991年就發布了的,並不是一門新出現的程式語言,為什麼最近卻越來越火呢?Python具有語法簡單、語句清晰的特點,非常容易上手,特別適合於初學者!2. Python是一門解釋型腳本語言,語法簡單,可擴展性強,跟自然語言很像,易於閱讀和編寫!3. Python能夠滿足各種開發需求,為程式設計師提供了各種選擇,它是一門真正通用的程式語言。4.
  • 西安雁塔Python少兒編程課一節多少錢?
    樂博Python少兒編程課  單元 單元名稱課時 第1單元 邏輯之美 6 第2單元 當python找編程老師就是為孩子營造一個地道的編程學習環境,在線少兒編程網就是專門為孩子打造地道編程學習環境的課程,創造了一個孩子專屬的編程老師,使師生建立了深厚的友誼和默契。固定編程老師可以隨時掌握孩子的學習過程,並與助教和家長溝通孩子的學習情況。
  • 真實課程測評分享:猿編程、編程貓、核桃編程、和碼編程有何不同?
    了解到少兒編程的意義,為了選到好課程,我和孩子試聽了不少編程機構的課,對比他們的課程內容、教學模式、服務質量,最終選擇了一家合適的編程機構,並堅持學習了半年,今天分享給大家。其實,在挑選編程課前,我對編程一無所知。不同的編程機構甚至主推的程式語言都不一樣,有些是Scratch,有些是python,有些是C++。我覺得有必要用簡單明了的語言,給寶媽們科普下三種程式語言的區別。
  • Python和C語言的語法有什麼不同?
    隨著經濟發發展,網際網路精英的缺乏越來越嚴重了,尤其是編程工程師,市場缺乏率極高,所有對於準備即將學習編程朋友,是一個非常的好時機 Python和C語言的語法有什麼不同?
  • Python開發簡單爬蟲【學習資料總結】
    一、簡單爬蟲架構 簡單爬蟲架構 運行流程
  • 慢步學習,python編程實例中,對遍歷程序結構for語句的解析
    大家好,慢步繼續不定期更新通俗易懂的python編程學習內容。今天主要說說for語句。for語句是比較常見的語句,其實也算比較簡單的,多看幾個實例就可以了解。但慢步還是想囉嗦一些,跟大家解析一下。接著簡單解析一下這個實例的代碼。第1-5行,三引號內為注釋,供程式設計師閱讀。第6行為引用python-docx庫內的Document模塊(python-docx庫的引用默認為docx,和庫設計有關,其他庫一般用庫名稱)。
  • Python for Mac(Python編程工具)
    Python for Mac是Mac系統上的一款Python編程平臺,由IDLE與Python Launcher兩部分組成。Python是一種極其通用,動態,可解釋和通用的語言,也是當今最受歡迎和最受歡迎的程式語言之一。歡迎需要的朋友前來macz下載使用。