11個新手快速入門Python知識點愁铺!

隨著移動互聯(lián)網(wǎng)的普及,服務器運維所面臨的挑戰(zhàn)也隨之越來越大闻鉴。當規(guī)模增長到一定程度帜讲,手動管理方式已經(jīng)無法應對,自動化運維成為解決問題的銀彈椒拗。Python憑借其靈活性似将,在自動化運維方面已經(jīng)被廣泛使用,能夠大大提高運維效率蚀苛,服務器集群的規(guī)模越大在验,優(yōu)勢越明顯。下面一些知識有助于你開始進入Python的世界堵未。

很多人學習python腋舌,不知道從何學起。

很多人學習python渗蟹,掌握了基本語法過后块饺,不知道在哪里尋找案例上手赞辩。

很多已經(jīng)做案例的人,卻不知道如何去學習更加高深的知識授艰。

那么針對這三類人辨嗽,我給大家提供一個好的學習平臺,免費領(lǐng)取視頻教程淮腾,電子書籍糟需,以及課程的源代碼!??¤

QQ群:1057034340

1.Python適用于哪些應用場景谷朝?

這個沒有固定答案洲押,很多人都說Python不適合開發(fā)GUI的程序,但Python自己的IDE——IDEL和第三方的IDE——Eric就是Python寫的圆凰。

目前看到的更多的人是拿來寫Web杈帐,使用如Django、web.py框架专钉,沒記錯Flask也是挑童。

也有一個情況用的比較多,用Python當膠水驶沼,與各種語言結(jié)合炮沐,共同完成某軟件功能,注意觀察也許你會發(fā)現(xiàn)在安裝一些軟件的時候會有Python的身影回怜。

我個人還拿Python模擬過端口轉(zhuǎn)發(fā)和DNS服務等大年,所以真的是要看真么用,而不是能怎么用玉雾。

另外大數(shù)據(jù)分析Python也是比較適合的翔试,從載入到分析,再到保存結(jié)果等复旬,Python有一整套的模塊應對垦缅。

2.Python能夠勝任大數(shù)據(jù)嗎?

Python很適合做大數(shù)據(jù)相關(guān)的分析驹碍,內(nèi)置的C編譯的模塊能應對常見的操作壁涎,個別極端的算法建議用C重寫相關(guān)模塊。

Python本身的特點更多的是高效率的開發(fā)和簡單的維護志秃,速度交給C去吧怔球,更多的問題其實出自寫代碼的人沒有更好的使用,而不是效率不夠高浮还。比如排序竟坛,本來Python有非常高效的內(nèi)置C編譯的模塊,卻非要自己寫算法,這樣的結(jié)果不慢都是奇怪的担汤。

另外還要看需求是CPU密集型涎跨,還是IO密集型,如果是CPU密集型建議這部分操作由C實現(xiàn)崭歧,IO密集型的效率不會因為Python而有多少改變隅很。

C的效率是高,但框架搭起來也費勁驾荣,所以還是結(jié)合著來吧外构,也因此普泡,Python被稱為膠水語言播掷。

3.Python是否可以完全代替Shell?

完全可以撼班,Shell的功能Python均可實現(xiàn)歧匈,而且代碼量更少、結(jié)構(gòu)更優(yōu)砰嘁、可閱讀性更好件炉,而Python可實現(xiàn)的功能Shell卻不一定能,如運維中會用到的用于網(wǎng)絡通信的Socket模塊矮湘、用于WEB的Django框架斟冕、用于性能采集的psutil模塊等,而且Shell對操作系統(tǒng)的命令依賴性較強缅阳,Python可在更大程度上規(guī)避磕蛇。

在一個Shell的IDE是個很大的問題,雖然Python的原生IDE不怎么樣十办,但第三方的IDE還是功能十分強大的秀撇,雖然不能和微軟的Virtual Studio相媲美,但也是能完全滿足Python的開發(fā)需求的向族。

再說下Python的效率問題呵燕,Python支持多進程、多線程以及協(xié)程(比線程更小一級)件相,程序并發(fā)度是在Shell之上的再扭。Python的核心模塊基本都是用C實現(xiàn)的,因此效率更高夜矗。如有必要也可能將需要用Python實現(xiàn)的Python模塊用C重寫以提高效率泛范,當然也可以直接用C Python,一個直接完全用C實現(xiàn)的Python解釋器侯养。

4.Python是否可以訪問常見的數(shù)據(jù)庫敦跌?

可以,Python可以訪問常見的各種數(shù)據(jù)庫,如Oracle柠傍、MySQL麸俘、Vertica、SQLServer等惧笛,加載相應的模塊即可从媚,模塊列表如下:

Oracle:cx_Oracle

MySQL:MySQLdb

5.Python開發(fā)是面向過程、函數(shù)還是對象患整?

Python雖然是解釋型語言拜效,但從設計之初就已經(jīng)是一門面向?qū)ο蟮恼Z言,對于Python來說一切皆為對象各谚。正因為如此紧憾,在Python中創(chuàng)建一個類和對象是很容易的,當然如果習慣面向過程或者函數(shù)的寫法也是可以的昌渤,Python并不做硬性的限制赴穗。

Python的面向?qū)ο筇卣魅缦拢?/p>

1.封裝

面向?qū)ο蟪绦蛟O計中的術(shù)語對象(Object)基本上可以看做數(shù)據(jù)(特性)以及由一系列可以存取、操作這些數(shù)據(jù)的方法所組成的集合膀息。傳統(tǒng)意義上的“程序= 數(shù)據(jù)結(jié)構(gòu)+算法”被封裝”掩蓋“并簡化為“程序=對象+消息”般眉。對象是類的實例,類的抽象則需要經(jīng)過封裝潜支。封裝可以讓調(diào)用者不用關(guān)心對象是如何構(gòu)建的而直接進行使用甸赃。

2.繼承

類繼承:

繼承給人的直接感覺是這是一種復用代碼的行為。繼承可以理解為它是以普通的類為基礎(chǔ)建立專門的類對象冗酿,子類和它繼承的父類是IS-A的關(guān)系埠对。

多重繼承:

不同于C#,Python是支持多重類繼承的(C#可繼承自多個Interface已烤,但最多繼承自一個類)鸠窗。多重繼承機制有時很好用,但是它容易讓事情變得復雜胯究。

3.多態(tài)

多態(tài)意味著可以對不同的對象使用同樣的操作稍计,但它們可能會以多種形態(tài)呈現(xiàn)出結(jié)果。在Python中裕循,任何不知道對象到底是什么類型臣嚣,但又需要對象做點什么的時候,都會用到多態(tài)剥哑。方法是多態(tài)的硅则,運算符也是多態(tài)的。

6.如何快速掌握Python株婴?

閱讀官方文檔即可滿足日常需求怎虫,官方文檔有中文翻譯(http://www.pythondoc.com/)暑认,更加方便學習。但這些都是基礎(chǔ)的語法和常見的模塊大审,Python學習重要的是模塊蘸际,快速、高效的開發(fā)依賴的是模塊的應用徒扶,站在前人的肩膀會省時省力的多粮彤。

但學習Python其實最重要的是學習模塊,而非語法本身姜骡,Python的語法十分簡單导坟,只要大學學過C或者數(shù)據(jù)結(jié)構(gòu)課程,甚至完全沒學過的人也是可以輕松掌握的圈澈。掌握了語法已經(jīng)可以實現(xiàn)Shell的功能惫周,但要想提高模塊的學習必不可少,如運維人員經(jīng)常用的有:

psutil:獲取性能信息

socket:基本網(wǎng)絡通信

IPy:IP地址相關(guān)處理

dnsptyhon:域名相關(guān)處理

difflib:文件比較

pexpect:屏幕信息獲取士败,常用于自動化

paramiko:SSH客戶端

XlsxWriter:Excel相關(guān)處理

其他還有很多很多功能模塊闯两,每天也不斷的有新的模塊褥伴、框架谅将、組件產(chǎn)生,如用于與Java Script做橋接的PythonJS重慢,甚至Python還可以編寫Map和Reduce饥臂。

7.Python是否有專用的IDE工具?

有似踱,IDEL用Python實現(xiàn)的Python的IDE工具隅熙,但說實話,功能真心不咋地核芽。我個人常用的IDE如下:

PyCharm

PyCharm是JetBrains開發(fā)的Python IDE囚戚。PyCharm用于一般IDE具備的功能,比如轧简,調(diào)試驰坊、語法高亮、Project管理哮独、代碼跳轉(zhuǎn)拳芙、智能提示、自動完成皮璧、單元測試舟扎、版本控制……另外,PyCharm還提供了一些很好的功能用于Django開發(fā)悴务,同時支持Google App Engine睹限,更酷的是,PyCharm支持IronPython!

Wing IDE

Wingware的Python IDE兼容Python 2.x和3.x羡疗,可以結(jié)合Django删窒,matplotlib,Zope顺囊, Plone肌索,App Engine,PyQt特碳,PySide诚亚,wxPython,PyGTK午乓,Tkinter站宗,mod_wsgi,pygame益愈,Maya梢灭,MotionBuilder,NUKE蒸其,Blender和其他Python框架使用敏释。Wing支持測試驅(qū)動開發(fā),集成了單元測試摸袁,nose和Django框架的執(zhí)行和調(diào)試功能钥顽。Wing IDE啟動和運行的速度都非常快靠汁,支持Windows蜂大,Linux,OS X和Python versi蝶怔。

NotePad++

簡單奶浦、方便,但僅適合臨時性的更改踢星。

其他的還有:Eclipse withPyDev澳叉、Sublime Text、Komodo Edit斩狱、PyScripter耳高、The Eric Python IDE、Interactive Editor for Python

8.運用Python實現(xiàn)系統(tǒng)自動化監(jiān)控有哪些常用方法所踊?

準確的說應該是有哪些模塊泌枪,健康監(jiān)控肯定要有psutil來監(jiān)控性能,還會用到通信的Socket秕岛,登陸的Paramiko碌燕、telnetlib误证,ftp的ftplib。

原理基本就是采集數(shù)據(jù)——本地處理數(shù)據(jù)——傳輸數(shù)據(jù)修壕,如果做的比較完善可以再做個呈現(xiàn)數(shù)據(jù)愈捅,也可以吧數(shù)據(jù)發(fā)送給Zabbix等開源工具。

個人還用一個開源監(jiān)控網(wǎng)絡刺探的慈鸠,超過指定次數(shù)就自動封殺蓝谨,需要的可以找我要下載地址。

9.Python可運行在那些平臺青团?跨平臺性如何譬巫?

支持常見的主流平臺,如AIX督笆、HPUX芦昔、Solaris、Linux娃肿、Windows等咕缎,除Windows外常見的Unix、Linux平臺均帶有原生的Python料扰,但版本一般較低凭豪。關(guān)于跨平臺和他跨平臺語言一樣,要注意有些個別模塊是單一平臺特有的记罚,整體的跨平臺性還是很好的墅诡,不必為適應多平臺寫多套代碼。

但這不是說一點限制都沒有:首先桐智,同一個版本的中間文件.py和.pyc以及.pyo是跨平臺的;其次烟馅,PC與移動終端说庭,如:手機、Pad不可跨平臺(原因見下一條)郑趁;最后刊驴,不能跨處理器構(gòu)架,如:Intel與ARM寡润,64位與32位捆憎。

10.如何利用Python提高開發(fā)效率?

因為Python很多底層的東西不用自己寫梭纹,模塊資源豐富躲惰,運用得當開發(fā)效率當然會提升,而且各種框架也為快速開發(fā)提供了基礎(chǔ)变抽。

11.Python運行速度如何础拨?

通常Java的速度比Python快些氮块。Python調(diào)用C擴展除外(也可以直接用CPython)。

對于Python速度太慢的批評诡宗,Python語言作者Guido van Rossum說:

如果你開發(fā)的系統(tǒng)發(fā)現(xiàn)了性能瓶頸滔蝉,通常最有效率的做法是找到出問題的代碼塊,用速度較快的語言如C或C++寫一些代碼替換該功能或該模塊塔沃,而不是用C或C++重寫整個系統(tǒng)蝠引,因為對大部分代碼而言,語言的速度是無關(guān)緊要的蛀柴。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末立肘,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子名扛,更是在濱河造成了極大的恐慌谅年,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,651評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肮韧,死亡現(xiàn)場離奇詭異融蹂,居然都是意外死亡,警方通過查閱死者的電腦和手機弄企,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,468評論 3 392
  • 文/潘曉璐 我一進店門超燃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人拘领,你說我怎么就攤上這事意乓。” “怎么了约素?”我有些...
    開封第一講書人閱讀 162,931評論 0 353
  • 文/不壞的土叔 我叫張陵届良,是天一觀的道長。 經(jīng)常有香客問我圣猎,道長士葫,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,218評論 1 292
  • 正文 為了忘掉前任送悔,我火速辦了婚禮慢显,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘欠啤。我一直安慰自己荚藻,他們只是感情好,可當我...
    茶點故事閱讀 67,234評論 6 388
  • 文/花漫 我一把揭開白布洁段。 她就那樣靜靜地躺著应狱,像睡著了一般。 火紅的嫁衣襯著肌膚如雪眉撵。 梳的紋絲不亂的頭發(fā)上侦香,一...
    開封第一講書人閱讀 51,198評論 1 299
  • 那天落塑,我揣著相機與錄音,去河邊找鬼罐韩。 笑死憾赁,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的散吵。 我是一名探鬼主播龙考,決...
    沈念sama閱讀 40,084評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼矾睦!你這毒婦竟也來了晦款?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,926評論 0 274
  • 序言:老撾萬榮一對情侶失蹤枚冗,失蹤者是張志新(化名)和其女友劉穎缓溅,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體赁温,經(jīng)...
    沈念sama閱讀 45,341評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡坛怪,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,563評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了股囊。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片袜匿。...
    茶點故事閱讀 39,731評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖稚疹,靈堂內(nèi)的尸體忽然破棺而出居灯,到底是詐尸還是另有隱情,我是刑警寧澤内狗,帶...
    沈念sama閱讀 35,430評論 5 343
  • 正文 年R本政府宣布怪嫌,位于F島的核電站,受9級特大地震影響其屏,放射性物質(zhì)發(fā)生泄漏喇勋。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,036評論 3 326
  • 文/蒙蒙 一偎行、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧贰拿,春花似錦蛤袒、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,676評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至荚守,卻和暖如春珍德,著一層夾襖步出監(jiān)牢的瞬間练般,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,829評論 1 269
  • 我被黑心中介騙來泰國打工锈候, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留薄料,地道東北人。 一個月前我還...
    沈念sama閱讀 47,743評論 2 368
  • 正文 我出身青樓泵琳,卻偏偏與公主長得像摄职,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子获列,可洞房花燭夜當晚...
    茶點故事閱讀 44,629評論 2 354

推薦閱讀更多精彩內(nèi)容