前言
? ? ? ? 本文章是深度學習的前導課,對有編程基礎的小伙伴更加的友好(C、C++),如果完全沒有學過任何一門編程語言也沒有關系,本文章不會涉及到晦澀難懂的原理,只是簡單的帶大家過一遍Python的基礎語法。
下面的操作可以在已經安裝python解釋器的情況下,在windows的終端中輸入python啟動python解釋器。
目錄
1. 算術運算
2. 數據類型
3. 變量
4. 列表
5. 字典
6. 布爾型
?7.if語句
8.for語句
9.函數
10.類
?
1. 算術運算
? ? ? ? *表示乘法,/表示除法,**表示乘方(3**2是2的三次方)。另外,在Python2.x中,正數除以正數得到的是正數,比如7/5的結果是1,。但在Python3.x中會得到小數(浮點數)。
2. 數據類型
? ? ? ? python是一門弱類型語言,也就是不強調數據的類型,但是實際上數據是有各自的類型的。
python有整數、小數、字符串等類型,可以使用type()函數來查看數據的類型如下圖。
? ? ? ? 根據上面的結果可以得知10是int類型(整型),2.75是float類型(浮點型),“hello”是str類型(字符串)。另外“類型”和“類”這兩個詞有時候是相同的意思。對于輸出結果<class int>,可以將其解釋成“10是int類(類型)”。
3. 變量
? ? ? ? 可以使用x、y等字母或字母組合定義變量。此外可以使用變量進行運算也可以對變量賦值。
?
? ? ? ? 上面我們提到,python是一門弱類型的語言,也就是說變量的類型是由實際情況“動態決定”的。在上面的例子中用戶并沒有動態指出x的類型是int類型,是python根據x被初始化為10,從上面判斷出x的類型是int的。
? ? ? ? 此外我們可以看到,整數和小數相乘的結果是小數(數據類型的自動轉換)。“#”是注釋的意思,它后面的文字會被python忽略,程序員可以記錄關于這段代碼的想法。
4. 列表
? ? ? ? 在其他的編程語言稱為數組,但是python的列表功能更為強大。列表可以用來存儲多個類型相同的元素。
? ? ? ? 元素的訪問是通過a[0]這樣的方式進行的。[]中的數字稱為索引(下標),索引從0開始(索引0對應第一個元素)。此外,python的列表提供了切片的功能,使用切片可以訪問某個值,還可以訪問列表的子列表。
?
? ? ? ? 進行列表的切片時,需要寫成a[0:2]這樣的形式。a[0:2]用于取出從索引為0的元素到索引為2的元素的前一個元素之間的元素。另外,索引-1對應最后一個元素,-2對應最后一個元素的前一個元素。
5. 字典
? ? ? ? 列表根據索引的方式進行儲值,而且元素類型必須是同一類型,字典則是以鍵值對的方式進行儲值,將單詞和對應的含義一起存儲起來。
6. 布爾型
????????python中有bool型。布爾型取值True或False其中的一個值。針對bool型的運算符包括and、or、和not(針對數值的運算符有+、-、*、/等,根據不同數據類型使用不同的運算符)。
?7.if語句
? ? ? ? 根據不同的條件選擇不同的處理分支可以使用if/else語句。
? ? ? ? 在python中空白字符具有重要的意義。上面的if語句中,if hungry:下面的語句開頭有4個空白字符,它是縮進的意思,表示當前面的條件(if hungry) 成立時,此處的代碼會被執行。這個縮進也可以用tab表示,python中推薦使用空白字符。
8.for語句
? ? ? ? 進行循環處理時可以使用for語句。
? ? ? ? ?這是輸出列表[1,2,3]的元素的例子。使用for... in:語句結構可以按順序訪問列表等元素集合中的各個元素。
9.函數
可以將一系列處理定義成函數。
此外函數可以取參數。
另外,字符串的拼接可以使用+。
10.類
? ? ? ? 前面的數據類型都是python內置的數據類型,接下來我們可以定義自己的類,即創建自己的數據類型,類要遵從以下格式。
class 類名:def __init__(self,參數,...): # 構造函數def 方法名1(self,參數,...): # 方法1def 方法名2(self,參數,...): # 方法2...
下面我們通過一個簡單的例子來創建一個類?。
class Man:def __init__(self,name):self.name = nameprint("初始化成功!")def hello(self):print("hello " + self.name + "!")def goodbye(self):print("goodbye " + self.name + "!")m = Man("大力")
m.hello()
m.goodbye()
? ? ? ? 這里我們定義了一個新類Man。上面的例子中,類Man生成了實例對象m。
? ? ? ? 類Man的構造函數(初始化方法)會接收參數name,然后用這個參數初始化實例變量self.name。實例變量就是每一個實例對象中存儲的變量。python中可以像self.name這樣通過在self后面添加屬性名來生成或者訪問實例變量。
????????本文到此結束,后面會介紹在深度學習中最常用的兩個庫,numpy和matplotlib,如果本文對你有幫助的話,可以點贊收藏評論,你的支持是我更新的最大動力!
?