《从问题到程序:用Python学编程和计算》——导读
https://yqfile.alicdn.com/588bc2da9421b8333b114ce90ae9979240cb7933.png" >
" >
前 言
計算機誕生至今不過六七十年,但它已經(jīng)改變了世界,改變了每個人的生活。人們每天都在與計算機交流(如智能手機),各領域專業(yè)人員的大量日常工作都需要使用計算機,從事與計算機相關工作的人們已經(jīng)發(fā)展為社會上最大的專業(yè)技術社團。計算機的研究和應用、互聯(lián)網(wǎng)和其他相關領域,還在不斷呼喚大量熟悉計算機的專業(yè)開發(fā)人才。計算機科學技術的開發(fā)和應用能力已被廣泛認為是國家競爭力的重要組成部分。因此,學習計算機科學技術知識,不僅是社會發(fā)展的需要,而且已成為個人的重要職業(yè)競爭力。然而,要深入理解計算和計算機,使其成為得心應手的工具,就必須學習編程。
近年來,Python語言的良好特征已經(jīng)得到學界和業(yè)界的廣泛認可,被世界上許多知名大學選作計算機科學教育的第一門語言,也被很多企業(yè)和實際項目作為開發(fā)語言。這些發(fā)展情況,使越來越多的人有了學習Python的興趣和需要。
本書源自作者講授基于Python的編程課程的經(jīng)驗,又經(jīng)過認真整理,目標是提供一條清晰易行的學習路徑。本書的結構和內容力圖反映編程的本質,可以作為高校計算機基礎課程教材,也適合希望學習Python語言和編程技術的讀者閱讀和參考。本書書名反映了作者對編程的基本認識:編程是從要解決的問題開始,最終得到解決問題的程序的過程。要學好編程,就要努力去理解這個過程,還必須反復實踐。
目 錄
前言
[第1章 程序設計和Python
1.1 計算機和程序
1.1.1 “是什么”和“怎樣做”的知識
1.1.2 計算和程序
1.1.3 編程語言](https://yq.aliyun.com/articles/108817)
[1.2 Python語言簡介
1.2.1 Python語言的發(fā)展和應用
1.2.2 Python系統(tǒng)和IDLE編程環(huán)境 ](https://yq.aliyun.com/articles/108822)
[1.3 程序開發(fā)
1.3.1 程序開發(fā)過程
1.3.2 程序錯誤
1.3.3 從問題到程序 ](https://yq.aliyun.com/articles/108826)
1.4 練習
[第2章 計算和編程初步
2.1 數(shù)值表達式和算術
2.1.1 整數(shù)計算
2.1.2 浮點數(shù)和復數(shù) ](https://yq.aliyun.com/articles/108837)
[2.2 數(shù)據(jù)對象、計算和類型
2.2.1 對象和類型
2.2.2 混合類型計算和類型轉換
2.2.3 數(shù)值類型和計算的簡單總結 ](https://yq.aliyun.com/articles/108848)
[2.3 內置函數(shù)和數(shù)學函數(shù)包
2.3.1 函數(shù)及其使用
2.3.2 處理數(shù)值的內置函數(shù)
2.3.3 數(shù)學函數(shù)包 ](https://yq.aliyun.com/articles/108856)
[2.4 字符串
2.4.1 字符串和字符串類型
2.4.2 字符串操作 ](https://yq.aliyun.com/articles/108862)
[2.5 標識符、變量和賦值
2.5.1 變量、名字和值
2.5.2 簡單順序計算 ](https://yq.aliyun.com/articles/108865)
[2.6 簡單腳本程序
2.6.1 腳本的編輯和執(zhí)行
2.6.2 程序和輸入 ](https://yq.aliyun.com/articles/108871)
[2.7 判斷和條件控制
2.7.1 條件判斷和邏輯表達式
2.7.2 if語句(條件語句)
2.7.3 編程實例 ](https://yq.aliyun.com/articles/108877)
[2.8 重復計算和循環(huán)
2.8.1 重復計算
2.8.2 for語句和重復計算
2.8.3 while語句和迭代
2.8.4 循環(huán)控制 ](https://yq.aliyun.com/articles/108883)
[2.9 計算的抽象和函數(shù)
2.9.1 計算的控制和抽象
2.9.2 計算的抽象:函數(shù)
2.9.3 函數(shù)定義和使用實例 ](https://yq.aliyun.com/articles/108887)
[2.10 若干Python機制及其他
2.10.1 已討論的Python機制
2.10.2 若干Python機制
2.10.3 Python解釋器 ](https://yq.aliyun.com/articles/108895)
[2.11 補充材料
2.11.1 語言細節(jié)
2.11.2 編程技術 ](https://yq.aliyun.com/articles/108907)
2.12 練習
[第3章 基本編程技術
3.1 循環(huán)程序設計
3.1.1 循環(huán)的需求和問題
3.1.2 常見循環(huán)形式
3.1.3 輸入循環(huán) ](https://yq.aliyun.com/articles/108976)
[3.2 遞歸
3.2.1 遞歸定義的函數(shù)
3.2.2 乘冪的計算
3.2.3 循環(huán)和遞歸
3.2.4 斐波那契數(shù)列的計算
3.2.5 最大公約數(shù)
3.2.6 不容易用循環(huán)求解的遞歸問題
3.2.7 更復雜的遞歸情況 ](https://yq.aliyun.com/articles/108993)
[3.3 程序終止性
3.3.1 調和級數(shù)的部分和
3.3.2 程序終止性不可判定 ](https://yq.aliyun.com/articles/108999)
[3.4 定義函數(shù)
3.4.1 為什么定義函數(shù)
3.4.2 學習定義函數(shù)
3.4.3 函數(shù):兩種觀點及其聯(lián)系
3.4.4 通用和專用的方法 ](https://yq.aliyun.com/articles/109021)
3.5 練習
第4章 函數(shù)和程序結構
4.1 作用域、環(huán)境和狀態(tài)
4.1.1 作用域與函數(shù)定義
4.1.2 環(huán)境和狀態(tài)
4.1.3 程序執(zhí)行中的環(huán)境變化
4.1.4 模塊和環(huán)境
4.2 函數(shù)定義和函數(shù)調用
4.2.1 函數(shù)定義的結構
4.2.2 函數(shù)調用中的問題
4.2.3 帶默認值形參和關鍵字實參
4.3 編程框架和高階函數(shù)
4.3.1 編程框架和函數(shù)的函數(shù)參數(shù)
4.3.2 匿名函數(shù)和lambda表達式
4.3.3 隨機數(shù)和模擬
4.3.4 高階函數(shù)
4.4 程序的測試和調試
4.4.1 測試
4.4.2 排除程序里的錯誤
4.4.3 使用IDLE的調試功能
4.4.4 程序測試問題
4.5 補充材料
4.5.1 語言細節(jié)
4.5.2 編程技術和規(guī)則
練習
第5章 數(shù)據(jù)的組織和操作
5.1 組合數(shù)據(jù)對象
5.2 表
5.2.1 簡介
5.2.2 表的構造和操作
5.2.3 編程實例
5.3 元組
5.3.1 基礎
5.3.2 有理數(shù)程序包
5.3.3 打包和拆分
5.4 序列、不變對象和可變對象
5.4.1 序列和序列操作
5.4.2 描述式
5.4.3 對象、變動和變量關聯(lián)
5.4.4 一些程序實例
5.4.5 表處理
5.5 字符串及其格式化生成
5.5.1 字符串操作
5.5.2 字符串的格式化
5.5.3 一個簡單的交互式計算器
5.6 字典
5.6.1 概念和操作
5.6.2 字典與函數(shù)參數(shù)
5.6.3 字典的應用實例
5.7 集合
5.7.1 概念和操作
5.7.2 集合操作
5.8 程序實例
5.8.1 多項式計算
5.8.2 另一個篩法實例
5.9 若干語言和技術問題
5.9.1 邏輯類型和邏輯判斷
5.9.2 函數(shù)參數(shù)的總結
5.10 補充材料
5.10.1 語言細節(jié)
5.10.2 編程技術
練習
第6章 高級編程技術
6.1 文件:使用外存數(shù)據(jù)
6.1.1 文件和輸入/輸出
6.1.2 Python的文件功能
6.1.3 文件處理程序實例
6.2 生成器函數(shù)和閉包
6.2.1 生成器函數(shù)
6.2.2 閉包和裝飾器
6.2.3 編程實例
6.3 異常和異常處理
6.3.1 運行中的錯誤
6.3.2 異常和異常處理
6.3.3 異常處理的結構和技術
6.3.4 try結構和raise語句詳述
6.3.5 預定義異常
6.3.6 用異常作為控制機制
6.4 數(shù)據(jù)處理和持久性
6.4.1 文本生成
6.4.2 數(shù)據(jù)記錄和信息管理
6.4.3 數(shù)據(jù)持久性
6.4.4 with語句
6.5 Python程序的幾個問題
6.5.1 Python程序及其運行
6.5.2 程序格式
6.5.3 怎樣閱讀Python手冊
6.6 補充材料
6.6.1 語言細節(jié)
6.6.2 編程技術
練習
第7章 數(shù)據(jù)抽象和面向對象編程
7.1 數(shù)據(jù)抽象、類和自定義類型
7.1.1 類型和數(shù)據(jù)組合
7.1.2 對象、類和類型
7.2 Python的類和對象
7.2.1 對象和操作
7.2.2 類定義
7.2.3 幾點說明
7.2.4 編程實例
7.3 繼承
7.3.1 繼承、基類和派生類
7.3.2 編程實例
7.3.3 多繼承
7.3.4 異常和類
7.4 實例:學校人事管理
7.4.1 概念分層和基礎人員類
7.4.2 具體人員類的設計和實現(xiàn)
7.4.3 討論
7.5 特殊方法名和特殊功能的類
7.5.1 容器類和迭代器
*7.5.2 上下文管理器和with語句
7.5.3 幾個特殊方法名
7.6 補充材料
*7.6.1 Python類、對象和方法
7.6.2 面向對象的技術和方法
7.6.3 總結
練習
第8章 其他編程問題
8.1 圖形用戶界面
8.1.1 人機界面的問題
8.1.2 標準庫包tkinter和圖形用戶界面
*8.1.3 tkinter的ttk包
8.1.4 GUI的簡單應用和問題
8.1.5 應用程序的GUI設計和實現(xiàn)
8.1.6 總結和討論
8.2 并發(fā)程序設計
8.2.1 并發(fā)程序
8.2.2 Python并發(fā)庫threading包
8.2.3 定義自己的線程類
8.2.4 并發(fā)程序的一些問題
8.2.5 線程間通信和queue包
8.2.6 一個GUI并發(fā)程序實例
8.2.7 總結和討論
總結
以上是生活随笔為你收集整理的《从问题到程序:用Python学编程和计算》——导读的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dbvis的使用
- 下一篇: spark 应用程序性能优化经验