天天看點

Python初學者必須知道的11個入門要點!

1、Python适用于哪些應用場景?

沒有固定的答案。很多人說Python不适合開發GUI程式,但Python自己的IDE—— IDEL和第三方IDE—— Eric都是用Python編寫的。

到目前為止,我見過的人越來越習慣于使用像Django,web.py這樣的架構編寫Web,而不會忘記Flask。

還有一種情況是使用更多,使用Python作為粘合劑,結合各種語言來完成某些軟體功能,注意觀察你可能會在安裝某些軟體時發現Python。

我個人也使用Python來模拟端口轉發和DNS服務,是以我真的想看看它是什麼,而不是如何使用它。

此外,大資料分析Python也适用,從加載到分析,到儲存結果等,Python有一套子產品可以處理。

2、Python能夠勝任大資料嗎?

Python非常适合與大資料相關的分析。内置的C編譯子產品可以處理常見操作,一些極端算法建議用C語言重寫相關子產品。

Python本身的特點是更高效的開發和簡單的維護。速度留給C.更多問題實際上并沒有被編寫代碼的人使用,效率不夠高。例如,排序,最初Python有一個非常高效的内置C編譯器子產品,但你必須編寫自己的算法,是以結果不慢很奇怪。

還取決于需求是CPU密集型還是IO密集型。如果它是CPU密集型的,那麼這部分操作是由C實作的。由于Python,IO密集的效率不會有太大變化。

C的效率很高,但架構也在掙紮,是以它仍然是一個組合。是以,Python被稱為粘合語言。

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

沒關系,Shell的功能是Python,代碼更小,結構更好,可讀性更好。 Python可以實作的功能shell不一定,例如操作和維護中使用的網絡。用于通信的Socket子產品,用于WEB的Django架構,用于性能收集的psutil子產品等,以及Shell對作業系統具有強大的指令依賴性,可以在更大程度上避免Python。

在Shell IDE中是一個很大的問題,雖然Python的原生IDE不是很好,但第三方IDE仍然非常強大,雖然不能與微軟的Virtual Studio相媲美,但它完全可以滿足Python的開發需求。

我們來談談Python的效率。 Python支援多程序,多線程和協程(比線程小一級),程式并發性高于shell。 Python的核心子產品基本上都是用C語言實作的,是以效率更高。需要在Python中實作的Python子產品可以用C重寫,以便在必要時提高效率。當然,您也可以直接使用C Python,這是一個完全直接在C中實作的Python解釋器。

4、Python是否可以通路常見的資料庫?

是的,Python可以通路各種常見的資料庫,如Oracle,MySQL,Vertica,SQLServer等,并加載相應的子產品。子產品清單如下:

Oracle:cx_Oracle

MySQL:MySQLdb

5、Python開發是面向過程、函數還是對象?

雖然Python是一種解釋型語言,但它從一開始就是一種面向對象的語言。對于Python,一切都是對象。是以,在Python中建立類和對象很容易。當然,如果你習慣于編寫程式或函數,Python不會強加硬性限制。

Python的面向對象特性如下:

封裝

面向對象程式設計中的術語對象基本上可以看作是一組資料(特征)和一組可以通路和操作資料的方法。傳統的“程式=資料結構+算法”被封裝為“屏蔽”并簡化為“程式=對象+消息”。對象是類的執行個體,需要封裝類的抽象。無論對象是如何構造的,封裝都允許調用者直接使用它。

繼承

類繼承:

直接的繼承感是這是一種重用代碼的行為。繼承可以了解為基于普通類建立專用類對象。子類及其繼承的父類是IS-A關系。

多重繼承:

與C#不同,Python支援多類繼承(C#可以從多個接口繼承,但最多隻從一個類繼承)。多重繼承機制有時非常有用,但很容易使事情複雜化。

多晶型

多态性意味着可以在不同的對象上使用相同的操作,但是它們可以以多種形式呈現結果。在Python中,當您不知道對象的類型,但是您需要做某些事情時,會使用任何歧義。該方法是多态的,運算符是多态的。

Python初學者必須知道的11個入門要點!

6、如何快速掌握Python?

閱讀官方檔案,滿足日常需求,官方檔案有中文翻譯,學習更友善。但這些是基本的文法和常用子產品。 Python對于子產品很重要。快速高效的開發依賴于子產品的應用。站在前輩的肩膀上将為您節省時間和精力。

但學習Python最重要的是學習子產品,而不是文法本身。 Python的文法非常簡單。隻要您在大學學習過C或資料結構課程,即使是那些從未學過它的人也可以輕松掌握它。掌握文法已經可以實作shell的功能,但是有必要改進子產品學習,比如操作和維護人員經常使用:

Psutil:擷取性能資訊

套接字:基本網絡通信

IPy:與IP位址相關的處理

Dnsptyhon:域名處理

Difflib:檔案比較

Pexpect:螢幕資訊采集,通常用于自動化

Paramiko:SSH用戶端

XlsxWriter:與Excel相關的處理

還有許多其他功能子產品,每天都在不斷生成新的子產品,架構群組件,例如用于橋接Java的PythonJS。甚至Python也可以編寫Map和Reduce。

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

是的,IDEL使用Python的IDE工具來實作它,但說實話,這個功能确實令人心碎。我個人使用的IDE如下:

PyCharm

PyCharm是由JetBrains開發的Python IDE。 PyCharm用于一般IDE功能,如調試,文法高亮,項目管理,代碼跳轉,智能提示,自動完成,單元測試,版本控制…此外,PyCharm為Django提供了一些很棒的功能,開發和支援Google App Engine。更酷的是PyCharm支援IronPython!

Wing IDE

Wingware的Python IDE與Python 2.x和3.x相容,可以與Django,matplotlib,Zope,Plone,App Engine,PyQt,PySide,wxPython,PyGTK,Tkinter,mod_wsgi,pygame,Maya,MotionBuilder,NUKE,攪拌機和其他人。使用Python架構。 Wing支援測試驅動開發,內建了nose和Django架構的單元測試,執行和調試。 Wing IDE啟動和運作速度非常快,支援Windows,Linux,OS X和Python版本。

NotePad++

簡單友善,但僅限于臨時更改。

其他是:Eclipse withPyDev,Sublime Text,Komodo Edit,Pyer,Eric Python IDE,Python的互動式編輯器

8、運用Python實作系統自動化監控有哪些常用方法?

準确地說出哪些子產品應該存在,健康監控必須有psutil來監控性能,還要使用通信套接字,登入Paramiko,telnetlib,ftp ftplib。

收集資料的基本原理是——本地處理資料——傳輸資料,如果你更完美,你可以制作一個示範資料,也可以将資料發送到開源工具如Zabbix。

個人還使用開源監控網絡進行間諜監控,并自動阻止超過指定次數。

9、Python可運作在那些平台?跨平台性如何?

支援常見的主流平台,例如AIX,HPUX,Solaris,Linux,Windows等。除Windows之外的常見Unix和Linux平台都有本機Python,但版本通常較低。至于跨平台及其跨平台語言,應該注意的是,某些單獨的子產品是單一平台所獨有的,整體跨平台性仍然非常好。沒有必要編寫多組代碼來适應多個平台。

但這并不是說沒有限制:首先,相同版本的中間檔案.py和.pyc和.pyo是跨平台的;其次,PC和移動終端,如:手機,Pads不是跨平台的(見下面的原因)最後,沒有跨處理器架構,如Intel和ARM,64位和32位。

10、如何利用Python提高開發效率?

因為許多Python的低級事物不必自己編寫,子產品資源豐富,開發效率肯定提高,各種架構為快速開發提供了基礎。

11、Python運作速度如何?

通常Java比Python快。除了Python調用C擴充(你也可以直接使用CPython)。

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

如果您正在開發的系統發現性能瓶頸,通常最有效的方法是找到有問題的代碼塊,并用更快的語言(如C或C ++而不是C或C ++)替換函數或子產品。重寫整個系統,因為對于大多數代碼來說,語言的速度是無關緊要的。

學習是一個人最偉大的修養。通過學習,您不僅可以改善自己的領域,還可以豐富您的知識,為未來的就業奠定基礎。學習Python是一個發展自己的好機會。畢竟,人工智能的時代已經到來,Python作為一個人工智能時代的主力是非常有前途的,夢想不是腐朽,而且一路上都有汗水。來吧!python學習交流群654234959

最後分享一些私藏的學習資料

Python初學者必須知道的11個入門要點!

連結:百度網盤

提取碼:2tfc

如果連結失效了可以加群654234959找管理小姐姐免費領取

繼續閱讀