隨著大數據技術、人工智能技術的不斷推進,Python語言越來越廣為大眾所熟知。作為一門功能強大、類庫豐富而又入門簡單的編程語言,Python已經成為計算機學科中受人歡迎的程序設計語言之一。
本書編著者多次參與全國高等職業院校“大數據技術與應用”技能競賽賽項,有感於“以賽促學”的職業教育理念能夠有效地貫徹和執行,因此本書的主要內容一方面圍繞著Python語言的程序設計基礎講解,采用實例與函數用法並行的講解方式來增進讀者在學習過程中的動手能力; 另一方面本著計算機基礎課程的教學要和企業、市場的需求相結合的理念,圍繞Python語言中代表性的數據處理和分析內容,運用實例講解了Python語言在這類應用中特點並應用廣泛的擴展庫——NumPy、Pandas、Matplotlib、jieba、Requests、Pythondocx等的使用方法。
本書針對零基礎學編程的讀者,詳細規劃了章節內容和遞進次序。例如,為了避免讀者在數據分析領域的知識不足,本書詳細講解了NumPy、Pandas擴展庫; 為了避免讀者對網頁結構的認識不足而造成網絡爬蟲編寫的困難,本書詳細講解了網頁標記的獲取方式等。
本書的特點如下。
1. 零基礎學習
讀者即便沒有任何編程基礎,也可以跟隨本書掌握Python的各種基本使用語法和技巧,靈活運用知識實現相關的應用實例。
2. 基於便捷的編程工具(PyCharm)
Python有各種應用編程工具,簡單、常見的就是使用IDLE。但這一工具無法便捷地使用Python的各類擴展庫,並且輸入、檢索、代碼標記等各類操作並不簡便,也與當前企業所用到的工具存在差異。因此,本書在一開始就教授讀者采用PyCharm集成工具的形式來使用Python,一方面是基於它與大多數的企業操作環境一致; 另一方面是基於該工具是目前Python應用環境中便捷、使用範圍廣的一種編輯工具之一。
3. 語法講解與實例應用相結合
圍繞Python的各類語法和函數的講解都用實例來說明。這樣讓讀者學習時增加相應的動手能力——自己去實踐和認知,把書本中的知識化為自己的技能。
4. 內容範圍廣泛(數據庫、面向對像、庫和包)
本書所講述的Python語言的範圍從程序基礎、程序控制流程、函數與模塊、面向對像編程到Python語言在數據分析方面的實際案例的應用,包含網絡爬蟲的編寫、Python圖形的繪制等內容。本書涵蓋範圍較廣,不僅包含各類相關Python擴展庫的使用,還包含面向對像的編程、模塊和包的使用以及網頁標記的獲取方式等內容。
5. 完善的各種擴展庫的講解
Python的各類應用擴展庫有十萬多個並還在不斷地增加中,這也是它廣受大眾歡迎的優點之一。但無論哪本書也無法對這些擴展庫的全部內容進行詳細介紹,因此本書就從Python應用廣泛的數據處理和分析的角度通過實例來講解NumPy、Pandas、Matplotlib、jieba、Requests、Pythondocx等擴展庫的使用方法。
本書涉及的各類Python內置庫和擴展庫的實例索引對照表如下。
序號
內置庫/擴展庫
對應章節號
1
keyword
2.2.1
2
calendar
2.3.4
3
time
2.3.4
4
hashlib
3.1.2
5
operator
3.10
6
Pythondocx
3.13.2
7
jieba
4.4.2
8
NumPy
5.5.1
9
Pandas
5.5.3
10
re
7.2.3
11
Requests
7.3.3
12
lxml
7.6.2
13
Matplotlib
7.9.1
本書涉及Python內置的函數、類、屬性和方法的實例索引對照表如下。
章節號
章節名稱
內置的函數、類、屬性和方法實例
2.2.6
基本輸入/輸出
input(),eval(),int(),float(),print()
3.1
數據類型概述
hash(),id()
3.2
數值
conjugate(),real(),imag(),complex()
3.3
字符串
len(),replace(),find(),index(),upper(),lower(),capitalize(),title(),strip(),lstrip(),rstrip(),split(),
join(),format()
3.4
字節
bytes()
3.5
列表
append(),insert(),del(),pop(),remove(),len(),max(),min()
3.6
del()
3.7
字典
dict(),clear(),len(),items(),keys(),values()
續表
章節號
章節名稱
內置的函數、類、屬性和方法實例
3.8
集合
set(),add(),update(),remove(),discard(),pop(),clear(),frozenset(),difference(),
difference_update(),intersection(),intersection_update(),symmetric_difference(),
symmetric_difference_update(),issubset()和issuperset()
3.9
數據類型轉換
zip()
3.12.1
文件讀取
open()
3.12.2
關閉文件
close()
4.2.5
lambda()函數
lambda()
4.3.5
iter()和next()函數
iter(),next()
4.3.6
列表解析
tuple(),ord(),sorted(),map(),filter()
5.3
模塊
__all__,__name__,__main__,__file__,__doc__,dir(),reload()
6.2.2
類對像和實例對像
__init__
6.3
屬性和方法
__name__,__dict__,__module(), __class__,__getattribute__,
__del__,
__str__,__repr__
6.4
繼承
super(),Mixin
6.5.1
重寫
overriding
6.5.2
重載
overloading
6.5.3
運算符重載
__add__,__sub__,__mul__,__getattr__,__setattr__,getitem__,
__setitem__,
__call__
6.6.3
內置裝飾器
@property, @staticmethod, @classmethod
本書涉及的主要表格索引對照表如下。
序號
表名稱
所在章節
1
表21Python常用賦值方法
2.2.4
2
表22Python 常用內置函數
2.2.5
3
表23Python語言的格式化輸出符號
2.2.6
4
表24格式化操作符號的輔助指令
2.2.6
5
表31常用數值運算符及其表達式
3.2.5
6
表32常用字符串運算符和表達式
3.3.3
7
表33Python轉義字符
3.3.4
8
表34字符串格式化操作符
3.3.5
9
表35格式化操作符輔助指令
3.3.5
10
表36字符串類型常用函數
3.3.7
11
表37常用列表運算符和表達式
3.5.3
12
表38常用列表內置函數表達式及其描述
3.5.4
13表39二維索引地址表3.6.2
14
表3組常用運算符和表達式
3.6.3
15
表311常用字典內置函數及其作用描述
3.7.4
16
表312集合數據類型的運算操作符和表達式
3.8.1
17
表313集合常用內置函數及其操作描述
3.8.6
18
表314常用數據類型轉換函數
3.9.1
續表
序號
表名稱
所在章節
19
表315常用operator模塊的函數及其表達式
3.10
20
表316常用的open()函數讀取模式
3.12.3
21
表317常用操作文件的函數表達式及其描述
3.12.4
22
表51NumPy庫多維數組創建語法
5.5.2
23
表52NumPy數組的屬性
5.5.2
24表53NumPy常用創建數組的函數5.5.2
25
表61常用的運算符重載方法
6.5.3
26
表71正則表達式的常用操作符
7.2.2
27
表72常用正則表達式使用實例
7.2.2
28
表73re庫的常用函數
7.2.3
29
表74re庫內常用的flags標記符
7.2.3
30
表75re.match匹配對像的方法
7.2.3
31
表76re.search匹配對像的屬性
7.2.3
32
表77網絡爬蟲中常用的Response Headers選項
7.3.2
33
表78xpath常用通配符和路徑表達式
7.6.3
34
表79水平直方圖barh()函數的常用參數
7.9.2
本書由蘇州工業園區服務外包職業學院的蔡黎亞、劉正和來自人工智能和數據分析領域的企業專家唐志峰共同編寫。
由於編著者水平有限,書中的不足之處在所難免,敬請各位讀者批評、指正。
編著者
2020年11月
本書勘誤及配套資源更新
(掃描二維碼可下載使用)