Python文本處理基礎(chǔ)培訓(xùn)
?
課程目標(biāo):
通過學(xué)習(xí),學(xué)員應(yīng)該能夠
了解基本的Python程序設(shè)計(jì)方法;
了解Python語言的大部分特性,并以此為基礎(chǔ)能夠閱讀復(fù)雜的源代碼;
掌握基本分析和調(diào)試Python程序的方法;
熟練使用Python進(jìn)行文本處理的各種工具及技巧;
使用Python進(jìn)行基礎(chǔ)的科學(xué)計(jì)算,例如數(shù)值,統(tǒng)計(jì),圖表等;
了解Python標(biāo)準(zhǔn)庫及第三方開源軟件的概況及組織結(jié)構(gòu),為進(jìn)一步的自學(xué)做鋪墊。
?
?
課程大綱:
?
主題:Python基礎(chǔ)
內(nèi)容:
環(huán)境介紹,Python及第三方庫的安裝等
Python程序的基本結(jié)構(gòu)
聯(lián)機(jī)幫助,查閱python的官方文檔
內(nèi)建類型的使用:int, float, bool, None, list, tuple, string, dict, set, immutable/mutable types
順序,分支和循環(huán)
變量,函數(shù)及其參數(shù)
使用module和package
使用標(biāo)準(zhǔn)庫:math,random
練習(xí):
給定包含整數(shù)的樣本(list of ints)編寫函數(shù)summary,計(jì)算樣本的描述性統(tǒng)計(jì)量,例如最大,最小,均值,方差,中位數(shù),眾數(shù)等。
給定文本(list of strings)編寫函數(shù),并利用summary對(duì)詞頻,字長的分布進(jìn)行分析
?
主題:文本的整理:輸入輸出,正則,格式化的文本
內(nèi)容:
str type和string lib
中文:Unicode和charset
文件讀寫:file
文件系統(tǒng)的讀寫:os, shutil
查找文件及感興趣的內(nèi)容:find,grep,awk, sort, uniq
正則表達(dá)式:re
格式化的文本:XML,HTML(minidom, lxml, pyquery)
獲取WWW上的文本:HTTP,requests,wget/curl
從pdf,word中獲取文本
練習(xí):
編寫程序從一個(gè)目錄中遞歸尋找python文件,計(jì)算所有py文件中import的package名字及次數(shù)。
給定一個(gè)中文小說(文件)編寫函數(shù),利用mmseg進(jìn)行分詞,找出詞頻最高的前50項(xiàng)
從百度音樂獲取音樂專輯的元信息(我沒有找到大量的xml用來做練習(xí),所以使用了HTML,它們都屬于標(biāo)記語言,很類似,可以使用相同的工具來處理)
?
主題:程序設(shè)計(jì)進(jìn)階
內(nèi)容:
函數(shù)高級(jí)特性:列表生成,高階函數(shù),生成器,迭代器,裝飾器
變量的作用域:全局變化,局部變量,類變量,實(shí)例變量等
OOP:面向?qū)ο蟮幕局R(shí)
__magic__ methods和操作符重載
異常捕獲和處理
程序調(diào)試debug
工程目錄結(jié)構(gòu)和代碼重用,版本控制
練習(xí):
編寫函數(shù)生成一個(gè)文本的所有bigram(trigram, n-gram),顯示其中頻率最高的10個(gè)
?
主題:常用第三方庫的介紹
內(nèi)容:
Matplotlib作圖
Dot, graphiz, networkx 圖可視化
Lex&Yacc做詞法語法分析
Xapian做文本檢索
Numpy和scipy做矩陣運(yùn)算
Pandas做數(shù)據(jù)分析
scikit-learn機(jī)器學(xué)習(xí)
py2 vs. py3
P2P
應(yīng)用層組播協(xié)議?
IP組播與IGMP
組播的工作原理
組播地址分配
實(shí)現(xiàn)組播的前提條件
組播樹
核心問題
覆蓋層網(wǎng)絡(luò)的節(jié)點(diǎn)延時(shí)聚集
覆蓋網(wǎng)之間(Inter-Overlay)優(yōu)化
P2P支撐平臺(tái)
安全
linux
SSL、TLS與WTLS
TLS(SSL)功能與作用
基于TLS的HTTP
TLS協(xié)議
TLS體系結(jié)構(gòu)
RFC2246標(biāo)準(zhǔn)
Handshake?Protocol
Record?Protocol
TLS加密
對(duì)稱加密、非對(duì)稱加密及單向散列函數(shù)(簡單)
DES
RSA
TLS的密鑰協(xié)商處理
LINUX組成
LINUX基礎(chǔ)管理
LINUX內(nèi)核
LINUX內(nèi)核組成
LINUX內(nèi)核編譯
LINUX文件系統(tǒng)
?