Python應用開發(fā)培訓
?
Python應用開發(fā)培訓
課程大綱:
一、Python基礎
第一部分:
Python簡介:特性,歷史,版本,文化,前景
環(huán)境及安裝
文檔和幫助
內(nèi)建數(shù)據(jù)類型
numeric:?int,float,complex,decimal,fraction
collection:?list,set,dict,string,frozenset,binary
types:?class,object,type,metaclass
內(nèi)建的函數(shù)
分支,循環(huán)語句
自定義函數(shù)
匿名函數(shù)
函數(shù)參數(shù):位置參數(shù),變長參數(shù),keyword參數(shù),keyword-only參數(shù)
變量作用域
函數(shù)作為參數(shù),高階函數(shù)
第二部分:
函數(shù)式編程
map/reduce/filter
列表,字典,集合生成
高級函數(shù)特性
迭代器,生成器,裝飾器
閉包,nonlocal
模塊和包
import原理
模塊查找機制
重載入模塊
面向?qū)ο?br>
構(gòu)造函數(shù)
成員變量:public?vs.?private
成員函數(shù)
classmethod,static?method
property
繼承,多繼承,mixin,mro,super
函數(shù)重載
metaclass
異常處理
內(nèi)建的異常體系
鉤子函數(shù):__special__?methods
其他語言特性:contextmanager
第二、Python標準庫
第一部分:
String?processing:string,re,structs,?hashlib,?base64,?xml.etree
Data?types:?datetime,?collections,?heapq,?bisect,?array,?weakref,?types,?copy,?pprint,?enum
Functional?programming:?itertools,?functools,?operator
Files?and?directories:?pathlib,?os.path,?stat,?tempfile,?glob,?fnmatch,?shutil
Data?persistence:?pickle,?json,?sqlite3,?yaml
Data?compression:?zlib,?gzip,?bz2,?zipfile,?tarfile,?lzma
OS:?os,?io,?time,?argparse,?platform,?errno,?signal
第二部分:
Concurrent:?threading,?multiprocessing,?subprocess,?queue
networking:?socket,?select,?ipaddress
runtime:?sys,?buitins,?contextlib,?atexit,?traceback,?__future__
Debugging?&?Profiling:?pdb,?profile,?timeit,?trace
Logging:?syslog,?logging
Others:?random,?pydoc,?tkinter,?configParser
三、Python應用程序開發(fā)
第一部分:
文本處理:
正則表達式
lxml,pyquery,beautifulsoap處理XML,HTML
pylex生成語法解釋器
Web
Django,Tornado
wsgi
common?django?extensions:crispyform,south?migration
Networking
Twisted編寫高并發(fā)server程序
requests處理HTTP
scrapy編寫高性能網(wǎng)絡爬蟲
Databases
MYSQL,PostgreSQL
MongoDB,Redis
MessageQueue
RabbitMQ
Redis
ZeroMQ
科學計算和機器學習
Numpy,scipy
sklearn
第二部分:
Python代碼規(guī)范:PEP8,F(xiàn)lake8
Packaging?&?dependency?management
setuptools
requirements
npm?(only?for?front-end?dependency)
Releasing:Pypi,pip
Deployment:Ansible?playbooks
Testing:doctest,?unittest,tox,pytest,?Selenium
Continous?integration:Jenkins
版本管理:Git
Code?review:Gerrit
Documents:Sphinx
Container:?venv,?vagrant,?docker
?
?