? ? ? ? 首先說一下,為啥小編在即PHP和Golang之后,為啥又要整Python,那是因為小編最近又拿起了 " 阿里天池 " 的東西,所以小編又不得不撿起來大概五年前學習的Python,本篇文章主要講的是最基礎版本,所以比較適合萌新和小白,所以大神可以略過去瞅瞅Golong的文章,后續會出一些關于天池和AI相關的文章,敬請期待。? ??
????????運行代碼一定是在文件目錄下:輸入python后一定要用exit()命令退出,要不然會出錯的,所以一定注意
安裝:
1.下載地址:
https://www.python.org
2.配置環境變量:
右鍵點擊"計算機",然后點擊"屬性"
然后點擊"高級系統設置"
選擇"系統變量"窗口下面的"Path",雙擊即可!
3.檢測是否安裝成功
命令:python
第一個python程序:
提示:PHP 和 Golang 有相同的語法
print("Hellow word")
運行第一個代碼編程:
1.進入安裝目錄
2.運行:python main.py
代碼格式:
格式:制表符 和 空格符 不能混用,在一個文件中只能使用其中一個
代碼分行顯示:不能使用換行,只能使用反斜線(\) 或者三引號("""內容""")或者 分號(;)
代碼注釋:
php ? : //
html ?: ?<!---->
Goalng: ?//
python: ?#
變量賦值:
PHP ? : name = value;
Golang: ?var name := ?value
Python: ?name = value
數據類型:
1.Numbers(數字):
2.String(字符串):
3.List(列表):
????????1.支持字符,數字,字符串甚至可以包含列表(即嵌套)?
????????2.【標識:[] 】 ?
????????3.加號 + 是列表連接運算符,星號 * 是重復操作(重復輸出次數)
????????4.更新:list[索引key] = value ; eg: list[1] = 100
4.Tuple(元組)
????????1.不能二次賦值,相當于只讀列表
????????2.【標識:() 】 ?
????????3.加號 + 是列表連接運算符,星號 * 是重復操作(重復輸出次數)
5.Dictionary(字典)
????????1.【標識:{} 】
????????2.列表是有序的對象集合,字典是無序的對象集合
????????3.字典當中的元素是通過鍵來存取的,而不是通過偏移存取
類型轉換:
PHP類型轉換:
intval()、strval()、boolval()、floatval() ......
Golang類型轉換:
1.string()、float16()......
2.strconv引入包
Python類型轉換:
函數 | 描述 |
int(x [,base]) | 將x轉換為一個整數 |
long(x [,base] ) | 將x轉換為一個長整數 |
float(x) | 將x轉換到一個浮點數 |
complex(real [,imag]) | 創建一個復數 |
str(x) | 將對象 x 轉換為字符串 |
eval(str) | 用來計算在字符串中的有效Python表達式,并返回一個對象 |
tuple(s) | 將序列 s 轉換為一個元組 |
list(s) | 將序列 s 轉換為一個列表 |
dict(d) | 創建一個字典。d 必須是一個序列 (key,value)元組。 |
chr(x) | 將一個整數轉換為一個 |
??
條件語句:
1.if 與 else
注意點:空格符一定要一直,要不然會報錯
語法:
if 條件:
? ? ? ? todo
else:
? ? ? ? todo
循環語句:
1.while
注釋:PHP中也有while循環
num = 10
while num > 0:
?? ?print num
?? ?num -= 1
2.for循環
注釋:PHP中也有for循環,Golong中也有for循環(for range)
數字類型循環:
num = 10
for x in xrange(1,10):
?? ?print x
隊列,元祖,字典循環
tuple = ( 'black', 'pink' , 1, 'white', 2.00)
for ks in tuple:
?? ?print ks
????????發現了什么?字典數據循環的時候,輸出的fly,play,run,為什么會這樣?因為字典是無序的,輸出的時候是按acii碼順序輸出的,這點一定要注意!????????
自定義函數:
語法:
def functionname( parameters ):
? ?#todo
? ?return [expression]
調用:
functionname()
例子:
def get_age(age):
? ?print age
? ?return
get_age(20)
輸出結果:
模塊化:
? ? ? ? 什么叫模塊化?在PHP中可以說是MVC中的M或者C,或在Golong中的package包,如果還是不太明白的話,再簡單點來說就是封裝的方法。使用方法就和Golong中的用法一樣,先引入然后調用
直接上例子:
文件夾結構:
主程序:
# -*- coding: UTF-8 -*-from package.package1 import package1
from package.package2 import package2package1()
package2()
初始化文件:
# -*- coding: UTF-8 -*-if __name__ == '__main__':print 'runing'
else:print 'initialization'
包文件:
# -*- coding: UTF-8 -*-def package1():print "I'm package 1"return
# -*- coding: UTF-8 -*-def package2():print "I'm package 2"return
運行結果:
運行后文件夾:
我們思考一下:為什么運行后會有.pyc文件?
????????解釋:是由Python文件經過編譯后所生成的文件,它是一種字節碼 byte code,因此我們直接查看就是亂碼的,也對源碼起到一定的保護作用,該文件是可以反編譯的
????????功能:.pyc文件
是一個可執行的字節碼文件
,目的是節省Python解析器翻譯
時間,提高運行效率
面向對象:
類:
? ? ??用來描述具有相同的屬性和方法的對象的集合,比如說:車子都有四個輪子,一個發動機,一個方向盤,那么我們在使用這些屬性的時候我們就會把他們歸結起來,形成一個類:車,下次我們在使用車這個類的時候就可以直接使用里面的輪子方法,發送機方法,方向盤方法。
? ? ? ? 創建的時候可以參考PHP的方法,方法需要初始化:__init__
構造方法原理:
? ? ? ? def __init__(self):
? ? ? ? ? ? ? ? self.data = []? ? ? ? ?
構造方法使用:
????????class Car():
?? ?????????def __init__(self, xval , yval):
?? ??? ?????????self.x = xval
?? ??? ?????????self.y = yval
?? ??? ?
????????mycar = Car(2,3)
????????print(mycar.x,mycar.y)
????????
?語法:
????????class ClassName:
?實例:
????????class Mycar:
?? ?????????tire = "20inch"
?? ?????????def firing(self):
?? ??? ?????????return "car firing"
? ? ? ? mycar = Mycar()
????????print mycar.tire
????????print mycar.firing()
? ? ? ? 運行效果:
????????
現在我們已經實現了一個簡單的類了,
至于以后進階教程會慢慢的出來,敬請期待
????????