python書籍推薦:Head First Python(中文版)

来源:https://www.cnblogs.com/fuchen9527/archive/2019/04/18/10732865.html
-Advertisement-
Play Games

所屬網站分類: 資源下載 > python電子書 作者:熊貓燒香 鏈接:http://www.pythonheidong.com/blog/article/64/ 來源:python黑洞網,專註python資源,python教程,python技術! Head First 系列的書籍一直飽受贊譽,這本 ...


所屬網站分類: 資源下載 > python電子書


作者:熊貓燒香

鏈接:http://www.pythonheidong.com/blog/article/64/

來源:python黑洞網,專註python資源,python教程,python技術!

  Head First 系列的書籍一直飽受贊譽,這本也不例外。Head First Python主要講述了Python 3的基礎語法知識以及如何使用Python快速地進行Web、手機上的開發。

下麵是該書每章結束部分的知識摘要:

第一章 初始Python:人人都愛列表(Lists)

1. 從命令行或者IDLE里都可以運行Python 3;
2. 標識符是指代數據對象的名稱,它本身並沒有“類型”,但是它所指代的數據對象擁有類型;
3. 內置函數print()可以在屏幕上顯示消息;
4. Python中的列表list是用中括弧包住的以逗號分隔的數據集合;
5. list和數組非常相似;
6. list既可以使用內置函數,也可以使用針對列表本身的函數;
7. list的大小按需自動伸縮。數據使用的所有記憶體都由Python管理;
8. len()內置函數用來計算數據對象的長度或是某個集合(如list)內條目的數量;
9. for迴圈可以幫助遍歷list,它用起來通常比等價的while迴圈更方便;
10. if...else...語句幫助在代碼中做出不同的選擇;
11. isinstance()內置函數可用來檢測標識符指代的數據對象是否為指定類型;
12. 使用def定義自定義函數。


第二章 分享代碼:函數模塊

1. 模塊是包含Python代碼的文本文件;
2. 分發工具(distribution utilities)幫助您將模塊變為可共用的包;
3. setup.py程式提供了關於模塊的元數據,他可以用於生成,安裝和上傳分發包;
4. 使用import語句將模塊導入到其他程式中;
5. Python中每個模塊都提供了自己的命名空間。它在使用module.function()形式調用時用以限定模塊內的函數。
6. 使用形如from module import function的import語句可以將模塊內特定函數導入當前命名空間;
7. 使用#可以將一行代碼變為註釋或者為程式添加一條精短且在一行內的註釋;
8. 內置函數擁有自己的命名空間,叫做__builtins__,它會自動包含進每個Python程式中。
9. range()內置函數可以和for用在一起進行固定次數的遍歷;
10. 在print()內置函數結尾包含end=''可以關掉輸出時自動添加的換行符;
11. 如果為函數參數提供預設值,那麼它們就為成為可選參數。


第三章 文件和異常:處理錯誤

1. 使用open()內置函數打開磁碟文件並創建一個迭代器來每次從文件中讀取一行數據;
2. readline()方法從一個打開的文件中讀取一行數據;
3. seek()方法可以將文件重新定位到開頭;
4. close()方法關閉上一次打開的文件;
5. split()方法將一個字元串分為許多份組成的列表;
6. Python中不可改變的常量list叫做tuple。一旦列表數據複製給一個tuple之後,tuple中的數據將不能再被改變。Tuple是不能變的(immutable);
7. 當數據與期望的格式有出入時,會產生ValueError;
8. 當數據沒法被正確訪問時(例如數據文件可能已經移動過或者重命名過),會產生IOError;
9. help()內置函數提供在IDLE shell中訪問Python文檔;
10. find()方法可以在一個字元串中查找特定子串;
11. not關鍵字用來否定一個條件;
12. try/except語句提供了異常處理機制,可以保護那些可能導致運行時錯誤的代碼段;
13. pass語句是Python中的空語句,它什麼都不做。


第四章 持久化:將數據存成文件

1. strip()方法移除字元串首尾空白字元;
2. print()內置函數中的file參數可以控制data是讀入或是寫出;
3. 不管try/except語句中是否有異常發生,finally的代碼段總是會被執行;
4. 異常對象會傳入到except代碼段,並且可以使用as關鍵字將其賦值給一個標識符;
5. str()內置函數可以用來訪問任何數據對象的字元串表示,前提是該數據對象支持該轉換;
6. locals()內置函數返回當前作用範圍內的變數集合;
7. in操作符可用於測試成員包含關係;
8. "+"操作符應用於兩個字元串時會得到它們的串聯結果,而應用於數字時會得到它們的相加和;
9. with語句即使在異常發生的情況下,也會自動去關閉所有打開的文件。with語句同樣可以使用as關鍵字;
10. sys.stdout是Python中的標準輸出,它位於標準庫中的sys模塊;
11. 標準庫pickle模塊可以讓輕鬆高效地保存Python數據對象到磁碟和從磁碟恢復Python數據對象;
12. pickle.dump()函數將數據存檔;
13. pickle.load()函數從磁碟恢複數據。


第五章 理解數據:讓數據動起來


1. sort()方法原地排序列表;
2. sorted()內置函數通過複製排序的方式可以對大多數數據結構進行排序;
3. 傳入sort()或sorted的參數reverse=True可以將數據進行降序排序;
4. 形如下麵的代碼段:
new_l = []
for t in old_l:
new_l.append(len(t))
可以重寫為列表表達式形式:[len(t) for t in old_l]
5. 使用切片從list中獲取多個數據條目,如:my_lis[3:6]會從索引3的位置訪問到索引6的位置,不包含6。
6. 使用set()工廠方法創建一個集合


第六章 自定義數據對象:圍繞數據編碼

1. 使用dict()工廠函數或使用{}來創建一個空的dictionary;
2. 訪問一個叫做person的dictionary中Name鍵所對應的值,可是使用熟悉的中括弧記法:person['Name'];
3. 同list和set類似,Python的dictionary數據結構也會隨著新元素的加入動態的增長;
4. 填充dictionary的方法有:new_d = {}或new_d = dict(),然後使用d['Name'] = 'Eric Idle';或者直接用一句話new_d = {'Name': 'Eric Idle'};
5. class關鍵字用來定義類;
6. 類中方法的定義與函數非常相像,都使用def關鍵字;
7. 類中屬性就如同對象實例內部的變數;
8. __init__()方法可以定義在類中用作實例化對象實例;
9. 類中定義的每個方法都必須提供self作為第一個參數;
10. 類中的每個屬性都必須使用self為首碼,以使得數據能與實例關聯在一起;
11. 既可以從頭開始創建類也可以從Python內置或自定義類中繼承;
12. 類可以被放入Python模塊並上傳到PyPI。

第7章 Web開發:信息彙總

1. MVC模式(Model-View-Controller)用一種可維護的方式幫助設計和構建一個Web應用;
2. model存儲Web應用中的數據;
3. view顯示Web應用的用戶界面;
4. controller使用編程邏輯將所有部分連接在一起;
5. 標準庫string模塊中有一個類叫做Template,它支持簡單的字元串替換;
6. 標準庫http.server模塊可以用來在Python中創建一個簡單的Web伺服器;
7. 標準庫cgi模塊提供編寫CGI腳本的支持;
8. 標準庫glob模塊處理文件列表非常好用;
9. 在Linux和Mac OS X上為可執行文件執行chmod+x命令;
10. 標準庫cgitb模塊在激活時可以在瀏覽器中看到CGI的編碼錯誤;
11. 使用cgitb.enable()可以在CGI代碼中打開CGI跟蹤;
12. 使用cgi.FieldStorage()可以訪問發送到Web伺服器請求部分的數據。


第8章 移動應用開發:小型設備

1. json庫模塊可以將Python內置類型轉為JSON數據交換格式;
2. 使用json.dumps()可以創建Python類型的字元串版本;
3. 使用json.loads()從JSON字元串中創建Python類型;
4. 使用JSON發佈數據需要制定Content-Type為application/json;
5. Python 2中的urllib和urllib2可以用與發送編碼後的數據給Web伺服器(使用urlencode和urlopen函數);
6. sys模塊提供了sys.stdin, sys.stdout和sys.stderr輸入流。


第9章 管理數據:處理輸入

1. 標準庫cgi模塊中的fieldStorage()方法可以訪問CGI腳本中發送給Web伺服器的數據;
2. 標準庫os中包含的environ字典,提供了對環境變數設置的輕鬆訪問;
3. SQLLite資料庫系統在Python中作為sqlite3標準庫存在;
4. connect()方法建立與資料庫文件的連接;
5. cursor()方法通過一個已有連接與資料庫進行通信;
6. execute()方法通過一個已有游標向資料庫發送SQL查詢;
7. commit()方法對資料庫做出永久性的改變;
8. rollback()方法取消任何針對數據的待定改動;
9. close()方法會關閉資料庫的已有連接;
10. Python代碼中的"?"占位符可以參數化SQL語句。

第10章 擴展Web應用:變得真實

1. 每個App Engine Web應用都必須有一個叫做app.yaml的配置文件;
2. 使用GAE啟動器啟動、停止、監控、測試、上傳以及部署Web應用;
3. App Engine的模板技術基於Django項目;
4. App Engine也可以使用Django表單驗證框架;
5. 使用self.response對象構造一個GAE Web應答;
6. 使用self.request對象在GAE Web應用中訪問表單數據;
7. 當應答GET請求時,可以子啊get()方法中實現需要的功能;
8. 當應答POST請求時,在post()方法中實現需要的功能;
9. 使用put()方法將數據存儲到App Engine datastore中。


第11章 處理複雜數據

1. input()內置函數提示並接受來自用戶的輸入;
2. 如果發現在使用的是Python2,可以使用原生的_input()函數來取代input()函數;
3. 使用Python內置的列表、集合及字典構建複雜數據結構;
4. 標準庫中的time模塊,有大量函數可以用來轉換不同的時間格式。




 
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、什麼是進程 進程(Process)是電腦中的程式關於某數據集合上的一次運行活動,是系統進行資源分配和調度的基本單位,是操作系統結構的基礎。在早期面向進程設計的電腦結構中,進程是程式的基本執行實體;在當代面向線程設計的電腦結構中,進程是線程的容器。程式是指令、數據及其組織形式的描述,進程是程 ...
  • In many programming competitions, we are asked to find (or count the number of) Prime Factors of an integer i. This is boring. This time, let’s count ...
  • 字元串是一種非常重要的數據類型,但是C語言不存在顯式的字元串類型,C語言中的字元串都以字元串常量的形式出現或存儲在字元數組中。同時,C 語言提供了一系列庫函數來對操作字元串,這些庫函數都包含在頭文件 string.h 中。 一、字元串常量和字元數組 1.1、什麼是字元串常量 C 語言雖然沒有字元串類 ...
  • ConcurrentSkipListSet的底層是ConcurrentSkipListMap嗎? ConcurrentSkipListSet是線程安全的嗎? ConcurrentSkipListSet是有序的嗎? ConcurrentSkipListSet和之前講的Set有何不同? ...
  • 0. 前言 接著上一篇 "博客" 的內容,我將繼續介紹Python相關的語法。部分篇章可能不只是簡單的語法,但是對初學者很有幫助,也建議讀懂。 1. 表達式 由數字、符號、括弧、變數等組成的組合。 算術表達式 邏輯表達式 賦值表達式 在Python中,變數無需實現聲明,也不需要指定類型。 在Pyth ...
  • 1、列印在左上角 預覽: 2、列印在左下角 預覽: 3、列印在右上角: 預覽: 4、列印在右下角: 預覽: ...
  • 上一節是把大概的流程給過了一遍,但是還有很多地方沒有說到,後續的慢慢會涉及到,敬請期待! 這次我們說說垃圾收集器,又名gc,顧名思義,就是收集垃圾的容器,那什麼是垃圾呢?在我們這裡指的就是堆中那些沒人要的對象。 1.垃圾收集器的由來 為什麼要有垃圾收集器啊?不知道有沒有想過這個問題,你說我運行一個程 ...
  • 今天學習了鏈表內的創建和添加,先總結一下我犯的錯誤 先上代碼 代碼註釋: 思路分析: 本次練習首先是數據結構中簡單鏈表中單個結點的創建,經過分析可得,若是想要在程式運行的過程當中進行創建添加操作: 鏈表簡單的添加,此處的添加分為兩種情況: 程式中原先若是有鏈表已經出現,那麼頭指針是指向第一個結點可以 ...
一周排行
    -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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...