• Python的特色算法
• Python的種類編程
• Python的編碼數據結構
• Python的安裝環境推薦編程語言
• Python的基礎用法:輸入輸出,算術運算符,邏輯運算符,基本程序結構語法工具
我爲何要學Python呢?很簡單,Python實在是太強大了。它不須要很專業的數據結構、算法知識,須要用的路別人都鋪好了,而且鋪的特別平正,咱們須要作的就是去調包便可,能夠節省大量的時間。可是正是因爲別人都把工做安排的明明白白,致使不少學Python的人到頭來只會搬磚,因此我要清楚,語言只是工具,無論去用來作什麼,都要懂得其中之理。性能
Python的特色:即快又慢,快在它開發速度快,搭建一個網站只須要幾行代碼,作大量數據的數據也只是須要幾行代碼,開發者在很短的時間內就能作出本身想作的產品。慢在它的性能,執行一樣的功能,C須要1秒,Python就至少須要10秒,就是由於Python的高度封裝性,可能只是一行打碼,但其底層會花費大量的時間。可是隨着如今CPU執行速度的快速發展,Python的劣勢愈來愈低,C的0.01s和Python的0.1s在咱們看來沒有任何區別,都是瞬間出結果。因此Python這幾年的使用率一路飆升,已經超過了C++位居第三。學習
Python的種類:目前用的最多的Python是用C語言寫的,也叫CPython,其任何操做都是由Python解釋器解釋爲C代碼再執行的,效率也比較高。除此以外,還有JavaPython,C#Python,PyPy,他們的底層分別是Java,C#,Python,Pypy是對Python的再度封裝,使其更加簡潔,可是使用率不高。這三種Python幾乎沒人用,由於Java,C#也都是以C爲底層的。。。直接用CPython就行啦。除非一些限制場景,好比Python要跟Java交互,這樣的話用JavaPython會更好。大概就是下面這幅圖的關係。網站
知道爲何大學裏面第一個編程基礎課是C了吧。他幾乎是全部編程語言的祖宗。簡單而又底層。因此若是想學好編程語言,仍是要把C學踏實。學其餘語言的時候才更容易理解,更容易找到錯誤所在。編碼
Python的編碼:Python3的py文件都是以utf-8編碼的。Python2則不是,須要加上# -*- coding:utf-8 -*-。各類編碼關係以下圖所示。spa
出現utf-8就是由於Unicode在處理字母時,也會編碼爲16位,這樣的話高8位就全爲0,反而浪費不少空間,因此utf-8就把字母編碼爲8位(1字節),把漢字編碼爲16位。其餘國家語言的可能還有24位的。
Python安裝:
強烈建議安裝anoconda!!!他是Pyhon的開源環境管理包,安裝了它,就有了Python,同時也會有Numpy,matplotlib這種很是經常使用的庫,還會附帶的有jupyter notebook,寫Python的利器。具體安裝方法網上多的是,只須要注意必定要勾選把路徑配置到環境變量就行。
IDE的話,上面說的jupyter notebook很不錯,還有更專業的Pycharm(網上各類破解方法)。這兩個就徹底夠了,Pycharm屬於重量級的PythonIDE,比較吃內存,但他的功能也是十分的強大,想寫個小項目,大項目徹底沒問題。jupyter notebook支持分段運行程序,在平常的學習中很是有用。
一、輸入輸出
a=input("Input something")
這一句就至關於C裏面的scanf,C++裏面cin了,不過Python的input把全部輸入的都儲存爲字符串了。
其實這個輸入並沒什麼卵用。知道就好了。
print("Hello World!")
驚不驚喜,意不意外,一個Hello World!程序就這樣寫好了。。。。哈哈哈
源碼裏面是這樣的。。。(pass是什麼鬼,就不能寫寫是怎麼實現的麼,直接Pass了,應該在其餘地方)這個
這個API
*args 表示能夠同時輸出多個內容,
sep=' ',表示輸出多個內容時中間用空格隔開
end='\n',表示輸出的內容以換行符爲標誌換行。
file,表示能夠打印文件流。沒用過這個
a=10 b=20 c="Hello World!" print(a,b,c,"\nAlbert!",sep=',,,',end='\n')
打印出來就是
10,,,20,,,Hello World!,,,
Albert!
有時候想格式化打印仍是挺有意思的。
二、算數運算符
對於數字的+ - * /就不用多說了。
%表示求餘,
/表示除(不用處理整型浮點型問題,/會自動處理)
//表示求商,就至關於將除的結果取整,獲得的仍是整數。
**表示乘方運算。至關於數學符號^
注意Python能夠直接用+ - *對字符串進行操做。
三、邏輯運算符
Python裏與是and,或是or,非是not。這個跟C裏面就不同的,當成我就用混過,
不過通過試驗,與能夠用&,或能夠用|,非不能夠用!。
還有一個很是好用的in
a in b會返回a是否在b裏面,這個之後在列表,字典,元組,字符串中很好用。判斷不在就是a not in b。
這樣就不用本身去寫遍歷,或者二分查找算法了。
四、程序結構
固然是順序,分支,循環啦。
分支:
a=97 b=99 if a>b: print("a大於b") elif a==b: print("a等於b") else: print("a小於b")
注意:Python裏面不{}表示代碼塊,而是用的不一樣的縮進。一樣的縮進表示在同一個代碼塊裏面,而不用大括號括住了。
注意冒號:,這個也跟其餘編程語言不同。剛開始我就有點沒反應過來。
循環
while 1==1: print("I LOVE YOU")
注意循環條件,冒號,縮進就行(縮進用tab鍵)
a=[1,2,3,4,5,6] for i in a: print(i)
最經常使用的仍是這種,遍歷全部元素。也不用什麼i++,他會本身進行迭代。
輸出
1 2 3 4 5 6
他能遍歷不少數據類型。
a="I LOVE YOU" for i in a: print(i) 輸出: I L O V E Y O U
今天這個就複習到這裏。明天寫數據類型。