Python——初識Python
本篇主要內容:
• Python的特點
• Python的種類
• Python的編碼
• Python的安裝環境推薦
• Python的基礎用法:輸入輸出,算術運算子,邏輯運算子,基本程式結構語法
我為什麼要學Python呢?很簡單,Python實在是太強大了。它不需要很專業的資料結構、演算法知識,需要用的路別人都鋪好了,並且鋪的特別平正,我們需要做的就是去調包即可,可以節省大量的時間。但是正是由於別人都把工作安排的明明白白,導致很多學Python的人到頭來只會搬磚,所以我要清楚,語言只是工具,不管去用來做什麼,都要懂得其中之理。
Python的特點:
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 -*-。各種編碼關係如下圖所示。
出現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支援分段執行程式,在日常的學習中非常有用。
Python基礎:
1、輸入輸出
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!
有時候想格式化列印還是挺有意思的。
2、算數運算子
對於數字的+ - * /就不用多說了。
%表示求餘,
/表示除(不用處理整型浮點型問題,/會自動處理)
//表示求商,就相當於將除的結果取整,得到的還是整數。
**表示乘方運算。相當於數學符號^
注意Python可以直接用+ - *對字串進行操作。
3、邏輯運算子
Python裡與是and,或是or,非是not。這個跟C裡面就不一樣的,當成我就用混過,
不過經過試驗,與可以用&,或可以用|,非不可以用!。
還有一個非常好用的in
a in b會返回a是否在b裡面,這個以後在列表,字典,元組,字串中很好用。判斷不在就是a not in b。
這樣就不用自己去寫遍歷,或者二分查詢演算法了。
4、程式結構
當然是順序,分支,迴圈啦。
分支:
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
今天這個就複習到這裡。明天寫資料型別。