初識Python-1
本節包含內容:
1.Python簡介
2.print語句
3.變量
4.常量
5.註釋
6.基本數據類型
7.用戶交互
8.if語句
1.Python簡介:
python的創始?人為吉多·範羅蘇姆(Guido van Rossum)。1989年年的聖誕節期間,吉多· 範羅蘇姆為了了在阿姆斯特丹丹打發時間,決?心開發?一個新的腳本解釋程序,作為ABC語?言的?一 種繼承。 新的TIOBE排?行行榜,Python已經占據世界第四名的位置, Python崇尚優美、清晰、簡 單,是?一個優秀並?廣泛使?用的語?言。
Python可以應?用於眾多領域,如:數據分析、組件集成、?網絡服務、圖像處理理、數值計算 和科學計算等眾多領域。?目前業內?幾乎所有?大中型互聯?網企業都在使?用Python,如: Youtube、Dropbox、BT、Quora(中國知乎)、?豆瓣、知乎、Google、Yahoo!、 Facebook、NASA、百度、騰訊、汽?車之家、美團等。
?目前Python主要應?用領域:
雲計算: 雲計算最?火的語?言, 典型應?用OpenStack
WEB開發: 眾多優秀的WEB框架,眾多?大型?網站均為Python開發,Youtube, Dropbox, ?豆瓣。。。, 典型WEB框架有Django
科學運算、?人?工智能: 典型庫NumPy, SciPy, Matplotlib, Enthought librarys,pandas
系統運維: 運維?人員必備語?言
?金金融:量量化交易易,?金金融分析,在?金金融?工程領域,Python不不但在?用,且?用的最多,?而 且重要性逐年年提?高。
原因:作為動態語?言的Python,語?言結構清晰簡單,庫豐富, 成熟穩定,科學計算和統計分析都很?牛逼,?生產效率遠遠?高於c,c++,java,尤其擅?長 策略略回測
’ 圖形GUI: PyQT, WxPython,TkInter
1.1.python是?一?門什什麽樣的語?言:
編程語?主要從以下?個?度為進?分類,編譯型和解釋型、靜態語?和動態語?、強類型定義語?言和弱類型定義語?,我們先看編譯型語?和解釋型語?言. 稍後再說強類型和弱類型
編譯和解釋的區別是什什麽?
編譯器?是把源程序的每?一條語句句都編譯成機器語?言,並保存成?二進制?文件,這樣運?行行時計算機 可以直接以機器語?言來運?行行此程序,速度很快; ?而解釋器?則是只在執?行行程序時,才?一條?一條的解釋成機器語?言給計算機來執?行行,所以運?行行速度 是不如編譯後的程序運?行行的快的. 這是因為計算機不能直接認識並執?行行我們寫的語句句,它只能認識機器語?言(是?二進制的形式)
1.2.python的優缺點 :
先看優點
1. Python的定位是“優雅”、“明確”、“簡單”,所以Python程序看上去總是簡單易易 懂,初學者學Python,不不但?入?門容易易,?而且將來深?入下去,可以編寫那些?非常?非常 復雜的程序。
2. 開發效率?非常?高,Python有?非常強?大的第三?方庫,基本上你想通過計算機實現任何 功能,Python官?方庫?裏裏都有相應的模塊進?行行?支持,直接下載調?用後,在基礎庫的基 礎上再進?行行開發,?大?大降低開發周期,避免重復造輪?子。
3. ?高級語?言————當你?用Python語?言編寫程序的時候,你?無需考慮諸如如何管理理你 的程序使?用的內存?一類的底層細節
4. 可移植性————由於它的開源本質,Python已經被移植在許多平臺上(經過改動 使它能夠?工 作在不不同平臺上)。如果你?小?心地避免使?用依賴於系統的特性,那麽你 的所有Python程序?無需修改就?幾乎可以在市場上所有的系統平臺上運?行行
5. 可擴展性————如果你需要你的?一段關鍵代碼運?行行得更更快或者希望某些算法不不公 開,你可以把你的部分程序?用C或C++編寫,然後在你的Python程序中使?用它們。
6. 可嵌?入性————你可以把Python嵌?入你的C/C++程序,從?而向你的程序?用戶提供 腳本功能。
再看缺點:
1. 速度慢,Python 的運?行行速度相?比C語?言確實慢很多,跟JAVA相?比也要慢?一些,因此 這也是很多所謂的?大?牛不不屑於使?用Python的主要原因,但其實這?裏裏所指的運?行行速度 慢在?大多數情況下?用戶是?無法直接感知到的,必須借助測試?工具才能體現出來,?比如 你?用C運?一個程序花了了0.01s,?用Python是0.1s,這樣C語?言直接?比Python快了了10倍, 算是?非常誇張了了,但是你是?無法直接通過?肉眼感知的,因為?一個正常?人所能感知的時 間最?小單位是0.15-0.4s左右,哈哈。其實在?大多數情況下Python已經完全可以滿 ?足你對程序速度的要求,除?非你要寫對速度要求極?高的搜索引擎等,這種情況下,當 然還是建議你?用C去實現的。
2. 代碼不不能加密,因為PYTHON是解釋性語?言,它的源碼都是以名?文形式存放的,不不 過我不不認為這算是?一個缺點,如果你的項?目要求源代碼必須是加密的,那你?一開始就 不不應該?用Python來去實現。
3. 線程不不能利利?用多CPU問題,這是Python被?人詬病最多的?一個缺點,GIL即全局解釋 器?鎖(Global Interpreter Lock),是計算機程序設計語?言解釋器??用於同步線程的 ?工具,使得任何時刻僅有?一個線程在執?行行,Python的線程是操作系統的原?生線程。 在Linux上為pthread,在Windows上為Win thread,完全由操作系統調度線程的 執?行行。?一個python解釋器?進程內有?一條主線程,以及多條?用戶程序的執?行行線程。即 使在多核CPU平臺上,由於GIL的存在,所以禁?止多線程的並?行行執?行行。關於這個問題 的折衷解決?方法,我們在以後線程和進程章節?裏裏再進?行行詳細探討。
當然,Python還有?一些其它的?小缺點,在這就不不?一?一列列舉了了,我想說的是,任何?一?門語 ?言都不不是完美的,都有擅?長和不不擅?長做的事情,建議各位不不要拿?一個語?言的劣勢去跟另?一個 語?言的優勢來去?比較,語?言只是?一個?工具,是實現程序設計師思想的?工具,就像我們之前中 學學?幾何時,有的時候需要要圓規,有的時候需要?用三?角尺?一樣,拿相應的?工具去做它最擅 ?長的事才是正確的選擇。之前很多?人問我Shell和Python到底哪個好?我回答說Shell是個 腳本語?言,但Python不不只是個腳本語?言,能做的事情更更多,然後?又有鉆?牛?角尖的?人說完全 沒必要學Python, Python能做的事情Shell都可以做,只要你?足夠?牛B,然後?又舉了了?用Shell 可以寫俄羅斯?方塊這樣的遊戲,對此我能說表達只能是,不不要跟SB理理論,SB會把你拉到跟 他?一樣的?高度,然後?用充分的經驗把你打倒。
print語句:
在Python3.x版本中print語句中在被打印的的語句外應使用括號與雙引號包括。
實例:
print("hello world")
變量:
變量:將運算的中間結果暫存到內存,以便便後續程序調?用.
變量命名規則:
1, 變量量由字?母, 數字,下劃線搭配組合?而成
2, 不不可以?用數字開頭,更更不不能是全數字
3,不能是pythond的關鍵字, 這些符號和字?母已經被python占?用, 不可以更更改
4,不要?用中?文
5,名字要有意義
6,不要太?長
7, 區分?大?小寫
推薦?大家使?用駝峰體或者下劃線命名 駝峰體: 除?首字?母外的其他每個單詞?首字?母?大寫 下劃線: 每個單詞之間?用下劃線分開
常量:
在Python中不存在絕對常量,約定俗稱,所有首字母大寫就是常量。
例如:
PI = 3.141592653
註釋:
有時候我們寫的東?西不?一定都是給?用戶看的. 或者不希望解釋器執?行行. 那我們可以使?用#來 註釋掉代碼. 被註釋的內容是不會執?行行的.可以?方便便後?面的程序員來拜讀你的代碼
單?行行註釋: # 被註釋的內容 多?行行註釋:‘‘‘ 被註釋的內容 ‘‘‘, """這個也是多?行行註釋"""
基本數據類型:
1.整數(int):
常?見的數字都是int類型. ?用於計算或者?大?小的比較
2.字符串(str):
在Python中,凡是?用引號引起來的,全是字符串串.
字符串串可以?用單引號,雙引號,或者三引號引起來,沒有什什麽區別,只是?一些特殊的格式需要不不?用的引號
3.布爾值(bool):
真或者假, True和False
用戶交互:
使?用input()函數,可以讓我們和計算機互動起來
語法:
內容 = input(提?示信息) 這?裏裏可以直接獲取到?用戶輸入的內容
流程控制if語句:
第?一種語法:
if 條件: #引號是將條件與結果分開。 結果1。 # 四個空格,或者?一個tab鍵,這個是告訴程序滿?足這個條件的 結果2。 如果條件是真(True) 執?行行結果1, 然後結果2, 如果條件假(False) 直接結果2
第?二種語法:
If 條件: 結果1 else: 結果2 代碼3
第三種語法:
If 條件1: 結果1 elif 條件2: 結果2 .. else: 結果N
第四種語法(嵌套):
If 條件1: 結果1 If 條件2: 結果2 else: 結果3 else: 結果4
#可以無限嵌套,但在實際開發中,盡量不要超過三層嵌套。
初識Python-1