Python入門經典以解決計算問題為導向的Python編程實踐PDF高清完整版免費下載|百度雲盤

来源:https://www.cnblogs.com/sahnhe/archive/2020/07/24/13374275.html
-Advertisement-
Play Games

百度雲盤:Python入門經典以解決計算問題為導向的Python編程實踐PDF高清完整版免費下載 提取碼:6e8d 內容簡介 《Python入門經典:以解決計算問題為導向的Python編程實踐》是一本系統而科學的Python入門教程,美國密歇根州立大學等多所美國知名高校採用其作為編程語言的入門教材, ...


百度雲盤:Python入門經典以解決計算問題為導向的Python編程實踐PDF高清完整版免費下載

提取碼:6e8d

 

 

內容簡介 

《Python入門經典:以解決計算問題為導向的Python編程實踐》是一本系統而科學的Python入門教程,美國密歇根州立大學等多所美國知名高校採用其作為編程語言的入門教材,被奉為經典。它不僅從電腦教學和電腦科學的角度講解了初學者如何才能更有效地去學習Python,而且特別強調用Python解決生活中的實際問題,精心組織了大量來源於生活中不同領域的與數值計算和數據處理相關的案例。通過《Python入門經典:以解決計算問題為導向的Python編程實踐》,讀者不僅能系統掌握Python編程相關的知識,而且還能掌握利用Python處理各種與數據相關的問題。《Python入門經典:以解決計算問題為導向的Python編程實踐》分為五部分,第一部分介紹電腦設備的一般概念和一些電腦術語;第二部分開始介紹編程的基本知識,包括入門知識和控制語句,為後續內容做鋪墊;第三部分講述數據結構和函數,包括字元串、列表和元組、字典和集合、文件、函數、演算法和程式等進階內容,有助於讀者提升編程技能;第四部分重點介紹如何使用類定義數據結構和演算法、開發程式等,培養讀者運用Python語言來實現基本的計算思想和策略的能力;第五部分主要介紹異常、測試和遞歸,旨在使讀者成為更好的程式員。《Python入門經典:以解決計算問題為導向的Python編程實踐》深入淺出,每一章節均給出了大量的實例、示範代碼和自測練習,便於讀者理解和掌握相關知識。讀者通過學習《Python入門經典:以解決計算問題為導向的Python編程實踐》,不僅能掌握Python語言的基本知識,還能學習如何在實踐中運用該語言解決問題。

 

目錄 

譯者序
前言
第一部分 關於電腦的思考
第0章 電腦科學研究
0.1為什麼要研究電腦科學
0.1.1電腦科學的重要性
0.1.2電腦“科學”
0.1.3通過編程學習電腦科學
0.2編程的困難和使命
0.2.1困難1:同時做兩件事
0.2.2困難2:什麼是好程式
0.2.3程式的使命
0.3選擇一種電腦語言
0.3.1各種電腦語言
0.3.2為什麼選Python
0.3.3Python是最好的程式語言嗎
0.4什麼是計算
0.5什麼是電腦
0.5.1自然界中的計算
0.5.2人類製造的電腦
0.6現代電子電腦
0.6.1就是開關
0.6.2晶體管
0.7從更高層面來瞭解現代電腦
0.8數據表示
0.8.1二進位數據
0.8.2使用二進位
0.8.3局限性
0.8.4字元表示
0.8.5其他數據表示
0.8.6數字代表什麼
0.8.7數據量
0.8.8數據量有多大
0.9後續章節概述
0.10總結
第二部分 開始編程
第1章 入門
1.1練習,練習,再練習
1.2快速入門——計算圓周長的程式
1.3互動式會話
1.4程式組成部分
1.4.1模塊
1.4.2表達式和語句
1.4.3空白
1.4.4註釋
1.4.5Python 的特殊元素:標記
1.4.6對象命名
1.5變數
1.6對象和類型
1.6.1數字
1.6.2其他內置類型
1.6.3對象類型:非變數類型
1.6.4創建新值
1.7運算符
1.7.1整數運算符
1.7.2浮點運算符
1.7.3混合運算符
1.7.4運算符順序和圓括弧
1.7.5增強的賦值運算符:快捷方式
1.8第一個模塊:math模塊
1.9開發演算法
1.10總結
1.11視覺場景:海龜繪圖
習題
編程項目
第2章 控制語句
2.1選擇語句:if
2.1.1利用布爾值做決定
2.1.2if 語句
2.1.3示例:在籃球運動中,領先多少分才安全
2.1.4迴圈
2.1.5例子:尋找完全數
2.1.6例子:對數字分類
2.2深入控制語句
2.2.1真與假:布爾值
2.2.2布爾變數
2.2.3關係運算符
2.2.4布爾運算符
2.2.5優先順序
2.2.6布爾運算符示例
2.2.7另一種賦值方式
2.2.8用於判定的選擇語句
2.2.9Python判定語句進階
2.2.10迴圈:while語句
2.2.11信號量迴圈
2.2.12迴圈總結
2.2.13for語句進階
2.2.14嵌套
2.2.15冰雹序列示例
2.3視覺場景:用pylab對數據繪圖
2.3.1使用列表和第一次繪製
2.3.2更有趣的繪圖:正弦波
2.4電腦科學觀點:最小的通用計算
2.5總結
習題
編程項目
第3章 演算法和程式開發
3.1什麼是演算法
3.2演算法特征
3.2.1演算法和程式
3.2.2細化
3.2.3有效性
3.2.4指定行為
3.2.5通用演算法
3.2.6真的可以實現一切嗎
3.3程式是什麼
3.3.1可讀性
3.2.2魯棒性
3.3.3正確性
3.4程式設計策略
3.4.1參與並提交
3.4.2瞭解,然後想象
3.4.3編程之前先思考
3.4.4實驗
3.4.5簡化
3.4.6停下來思考
3.4.7放鬆:讓自己休息一下
3.5簡單示例
3.5.1搭建框架
3.5.2輸出
3.5.3輸入
3.5.4計算
3.6總結
習題
第三部分 組織:數據結構和函數
第4章 字元串
4.1字元串類型
4.1.1三重引號字元串
4.1.2非顯示字元
4.1.3字元串表示形式
4.1.4字元序列
4.1.5索引和分片
4.2字元串操作
4.2.1連接(+)和重覆(*)
4.2.2“+”什麼時候表示加法運算,什麼時候表示連接運算
4.2.3比較運算符
4.2.4in運算符
4.2.5字元串集合是不可變的
4.3函數和方法預覽
4.3.1第一步:什麼是函數
4.3.2選擇方法的名字和參數
4.3.3字元串方法
4.3.4字元串函數
4.4字元串的格式化輸出
4.4.1描述符碼
4.4.2寬度描述符
4.4.3浮點數精度描述符
4.5字元串與控制語句
4.6處理字元串
4.6.1示例:記錄人名
4.6.2迴文
4.7示例:計算撲克牌
4.8總結
習題
編程項目
第5章 函數快速入門
5.1函數是什麼
5.2Python 函數
5.3函數控制語句
5.3.1函數控制語句詳解
5.3.2另一個函數示例
5.3.3函數示例:猜詞
5.3.4函數調用函數
5.3.5什麼時候使用函數
5.3.6如果沒有return語句會如何
5.3.7如果有多條return語句會如何
5.4視覺場景:用海龜繪圖法繪製美國國旗
5.5總結
習題
編程項目
第6章 列表和元組
6.1什麼是列表
6.2操作列表
6.2.1索引和分片
6.2.2運算符
6.2.3函數
6.2.4列表迴圈
6.3列表新內容
6.3.1列表可變性
6.3.2列表方法
6.4range、split及其他函數和方法
6.4.1range、split和多重賦值
6.4.2使用join在列表和字元串之間轉換
6.4.3sorted 函數
6.5示例
6.5.1字謎
6.5.2示例:文件分析
6.6可變對象及其引用
6.6.1深拷貝與淺拷貝
6.6.2可變與不可變
6.7元組
6.7.1從列表到元組
6.7.2為什麼需要元組
6.8列表:數據結構
6.8.1數據結構示例
6.8.2數據結構的另一個示例
6.9演算法示例:美國環境保護署通車裡程數據
6.10列表解析
6.11視覺場景:更多繪製任務
6.11.1numpy陣列
6.11.2繪製三角函數
6.12總結
習題
編程項目
第7章 深入瞭解函數
7.1函數調用函數
7.2作用域
7.2.1實參、形參和命名空間
7.2.2傳遞可變對象
7.2.3返回覆雜對象
7.2.4重構evens
7.3預設值以及形參為關鍵字
7.3.1示例:預設值和參數關鍵字
7.3.2預設值問題
7.4函數和對象
7.5示例:確定最終成績
7.5.1數據
7.5.2設計
7.5.3函數:weightedGrade
7.5.4函數:grade
7.5.5函數:main
7.5.6使用示例
7.6“傳值”或者“傳引用”
7.7總結
習題
編程項目
第8章 字典和集合
8.1字典
8.1.1字典示例
8.1.2Python 字典
8.1.3字典索引和賦值
8.1.4運算符
8.2單詞計數示例
8.2.1統計字元串中的單詞數
8.2.2《葛底斯堡演說》中的單詞出現頻率
8.2.3輸出和註釋
8.3示例:周期表
8.3.1使用CSV文件
8.3.2演算法概述
8.3.3實現分治的函數
8.4集合
8.4.1集合的歷史
8.4.2集合的組成
8.4.3Python 集合
8.4.4Python集合的方法、運算符和函數
8.4.5集合方法
8.5集合應用
8.5.1不同文件中單詞之間的關係
8.5.2輸出和註釋
8.6作用域:完整的故事
8.6.1命名空間和作用域
8.6.2作用域搜尋規則
8.6.3局部命名空間
8.6.4全局命名空間
8.6.5內置模塊
8.6.6封閉式變數
8.7Python指針:使用zip創建字典
8.8視覺場景:詞頻條形圖
8.8.1正確獲取數據
8.8.2標簽和xticks命令
8.8.3繪圖
8.9總結
習題
編程項目
第9章 文件
9.1什麼是文件
9.2存取文件:讀取文本文件
9.2.1其他文件存取方法
9.2.2數據流
9.3存取文件:寫文本文件
9.4在程式中存取文本文件
9.5創建文件和重寫文件
9.5.1通用新行格式
9.5.2文件內移動
9.6關閉文件
9.7CSV文件
9.7.1CSV模塊
9.7.2CSV Reader
9.7.3CSV Writer
9.7.4示例:更新某些成績
9.8示例:反覆提示,要求輸入正確的文件名
9.9模塊:os
9.9.1目錄/文件夾的結構
9.9.2os模塊函數
9.9.3os模塊示例
9.10總結
習題
編程項目
第10章 程式開發進階
10.1簡介
10.2分治
10.3乳腺癌分類
10.3.1問題
10.3.2方法:分類
10.3.3訓練和測試分類器
10.3.4構造分類器
10.4設計分類器演算法
10.4.1先分解,再合併
10.4.2數據結構
10.4.3文件格式
10.4.4makeTrainingSet函數
10.4.5makeTestSet函數
10.4.6trainClassifier函數
10.4.7第2輪修改後的trainClassifer
10.4.8用新數據測試分類器
10.4.9reportResults函數
10.5在完整數據上運行分類器
10.6其他有趣的問題
10.6.1標簽雲
10.6.2標準普爾500預測
10.6.3用國旗預測宗教
10.7總結
習題
編程項目
第四部分 類:自定義數據結構和演算法
第11章 類
11.1面向對象編程
11.1.1Python是面向對象的
11.1.2OOP特性
11.2使用OOP
11.3使用類和實例
11.3.1內置類和實例
11.3.2第一個類
11.3.3修改屬性
11.3.4實例和類之間的特殊關係:instance of
11.4對象方法
11.4.1使用對象方法
11.4.2編寫方法
11.4.3特殊參數self
11.4.4方法是類實例的介面
11.5融入Python類模型
11.5.1程式員定義的類
11.5.2Student類
11.5.3Python標準方法
11.5.4三種角色:類設計者、程式員和用戶
11.6示例:Point類
11.6.1構造函數
11.6.2距離
11.6.3兩點求和
11.6.4改進Point類
11.7Python和OOP
11.7.1封裝性
11.7.2繼承
11.7.3多態性
11.8Python和其他OOP語言
11.8.1公有與私有
11.8.2使用雙下劃線表示私有
11.8.3Python的宗旨
11.8.4修改實例
11.9總結
習題
編程項目
第12章 類進階
12.1更多類屬性
12.2Python實現機制
12.2.1類、類型與自檢
12.2.2運算符重載
12.3自定義運算符重載
12.4創建有理數類
12.4.1生成類
12.4.2分數加法回顧
12.4.3分數加法
12.4.4相等和分數化簡
12.4.5應用分治
12.5錯誤消息
12.5.1自檢
12.5.2修複int+Rational錯誤
12.6繼承
12.6.1“尋找屬性”游戲
12.6.2使用繼承
12.6.3實例:物理學標準模型
12.7總結
習題
第13章 使用類開發程式
13.1捕食問題
13.1.1規則
13.1.2面向對象的模擬
13.2類
13.2.1Island類
13.2.2捕食者和獵物、動物種類
13.2.3捕食者類和獵物類
13.2.4對象圖
13.2.5填充Island
13.3添加行為
13.3.1細化:添加移動
13.3.2時間迴圈模擬
13.4逐步求精
13.4.1改進的時間迴圈
13.4.2繁殖
13.4.3進食
13.4.4時鐘節拍
13.5細化問題
13.5.1移動多少次
13.5.2動物數量的圖形化
13.6總結
習題
第五部分 成為更好的程式員
第14章 異常和異常處理
14.1簡介
14.2基本的異常處理
14.3有關異常的哲學
14.4異常:else和finally
14.5異常的用法
14.5.1檢查輸入
14.5.2檢查文件打開
14.6深入異常
14.6.1raise
14.6.2自定義異常
14.7示例:密碼管理
14.8總結
習題
第15章 測試
15.1為什麼要進行測試
15.1.1錯誤類型
15.1.2“bug”和調試
15.2測試類型
15.2.1測試很難
15.2.2測試的重要性
15.3示例
15.3.1NBA效率
15.3.2基本演算法
15.4混合測試
15.4.1捕捉用戶錯誤
15.4.2捕獲開發者犯的錯誤
15.5自動測試
15.5.1doctest
15.5.2其他類型的測試
15.6總結
習題
第16章 遞歸:另一種控制機制
16.1什麼是遞歸
16.2數學和兔子
16.3自定義遞歸:反轉字元串
16.4遞歸如何實現
16.4.1棧的數據結構
16.4.2棧和函數調用
16.5用遞歸表示圖形
16.5.1遞歸樹
16.5.2Sierpinski三角形
16.6從遞歸到非遞歸
16.7總結
16.8習題
附錄
附錄A 開始使用Python
附錄B 用海龜繪圖法進行簡單繪圖
附錄C 繪圖和數值工具:快速瀏覽
附錄D Python 3.0
附錄E ASCII碼表
附錄F 優先順序
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 全棧的自我修養: 0005 Java 包掃描實現和應用(Jar篇) It's not the altitude, it's the attitude. 決定一切的不是高度而是態度。 Table of Contents 依賴的 Jar 思路 完整代碼 整合後代碼 如果你曾經使用過 Spring, 那你 ...
  • 目錄: 一、什麼是介面? 二、介面測試流程 三、介面測試工具 四、介面測試技術點 五、總結 導讀: 為什麼要做介面測試 介面測試本質上是功能測試的一種,屬於後端伺服器測試。但是它的影響範圍要遠廣於web,app層面。原因很簡單,因為目前很多公司,服務架構都是多端共用一套介面。和用戶直接交互的UI界面 ...
  • Python 是一門常用的編程語言,它不僅上手容易,而且還擁有豐富的支持庫。對經常需要針對自己所 處的特定場景編寫專用工具的黑客、電腦犯罪調查人員、滲透測試師和安全工程師來說,Python 的這些 特點可以幫助他們又快又好地完成這一任務,以極少的代碼量實現所需的功能。Python絕技:運用Pyth ...
  • 點擊此處進入網盤下載地址 提取碼:o39n 全書共有20章,書中的簡介如下: 本書旨在讓你儘快學會 Python ,以便能夠編寫能正確運行的程式 —— 游戲、數據可視化和 Web 應用程式,同時掌握讓你終身受益的基本編程知識。本書適合任何年齡的讀者閱讀,它不要求你有任何 Python 編程經驗,甚至 ...
  • 點擊此處進入網盤下載地址 提取碼:btqx 作者介紹: 馬修·羅塞爾(MatthewA.Russell),DigitalReasoningSystems公司的技術副總裁和Zaffra公司的負責人,是熱愛數據挖掘、開源和Web應用技術的電腦科學家。他也是《Dojo:TheDofinitiveGuid ...
  • Python爬蟲開發與項目實戰從基本的爬蟲原理開始講解,通過介紹Pthyon編程語言與HTML基礎知識引領讀者入門,之後根據當前風起雲涌的雲計算、大數據熱潮,重點講述了雲計算的相關內容及其在爬蟲中的應用,進而介紹如何設計自己的爬蟲應用。主要內容分為基礎篇、中級篇、深入篇,基礎篇包括Python編程基 ...
  • 本篇要學習的內容和知識結構概覽 函數的參數及其傳遞方式 1. 函數參數傳遞方式 傳值: 傳變數值: 將實參記憶體中的內容拷貝一份給形參, 兩者是不同的兩塊記憶體 傳地址值: 將實參所對應的記憶體空間的地址值給形參, 形參是一個指針, 指向實參所對應的記憶體空間 傳引用: 形參是對實參的引用, 形參和實參是同 ...
  • K近鄰演算法(KNN,K-NearestNeighbor)是機器學習或數據分析中最基礎、也是最簡單的演算法之一,這個演算法的思路就如同它字面上的意思“K個最近的鄰居”,想要得到某個樣本的某個特征的值(一個樣本通常有多個特征),就需要找到距離它最近的K個樣本,然後根據這些樣本的該特征的近似值作為它的特征值。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...