交互式解釋器:java
使用python自帶程序IDLE,啓動後可看到相似下面提示符:python
表達式:程序員
由一個或者幾個數字或者變量和運算符組合成的一行代碼,一般返回一個值。shell
運算符:編程
運算符用於執行程序代碼運算,會針對一個以上 操做數項目來進行運算。例如:2+3,其操做數是2和3,而運算符則是「+」windows
算術運算符(+、-、*、/、%、**、//)dom
比較運算符(==、!=、>、<、>=、<=)編程語言
賦值運算符(=、+=、-=、*=、/+、%=、**=、//=)ide
邏輯運算符(not、and、or)函數
位運算符(按位運算符是把數字看做二進制來進行計算)
成員運算符(in、not in)
身份運算符(is、is not)
運算符優先級(冪運算、正負號、算術操做符、比較操做符、邏輯運算符)這是比較常見的。
算術運算符:
>>> 2+3
5
>>> 3-1
2
>>> 2*3
6
>>> 4/2
2.0
>>> 10%3
1
>>> 2**3
8
>>> -3 ** 2
-9
>>> (-3) ** 2
9
>>> 10 //3
3
>>> 10 % -3
-2
>>> -10 % 3
2
>>> -10 % -3
-1
比較運算符
>>> age=10 # "="爲下面要講的賦值運算符
>>> ages=20
>>> age==ages
False
>>> age>ages
False
>>> age<ages
True
>>> age!=ages
True
>>> age>=ages
False
>>> age<=ages
True
賦值運算符
>>> X,Y,Z=10,11,12
>>> X
10
>>> Y
11
>>> Z
12
>>> age +=10
>>> age
20
>>> age -=5
>>> age
15
>>> age *= 5
>>> age
75
>>> age /=2
>>> age
37.5
>>> age %= 8
>>> age
5.5
>>> age **= 2
>>> age
30.25
>>> 10
>>> age
15.0
邏輯運算符:邏輯運算符在後面學習語法時再講。
成員運算符:在學習列表和元組時在舉例。
在舉例運算符時age =10 ,即定義變量age同時賦值爲10.
變量是表示(或指向)特定值的名稱。
變量的命名規則:只能由字母、數字、下劃線(_)構成,且不能以數字開頭。
模塊儘可能使用小寫命名,首字母保持小寫
類名使用駝峯(CamelCase)命名風格,首字母大寫,私有類可用一個下劃線開頭
函數名一概小寫,可用下劃線隔開
變量名儘可能小寫, 若有多個單詞,用下劃線隔開
常量使用如下劃線分隔的大寫命名
下面咱們使用print語句打印「HelloWorld」.
>>> print("HelloWorld")
按回車鍵後將以下輸出:
HelloWorld
若是你熟悉其它編程語言如java等編程都在行尾加上分號,python不須要這樣;
咱們使用IDLE優勢來編寫一個簡單的腳本命名test.py 。
在選擇菜單File-New File 這樣將建立新的編輯窗口,其中沒有交互式提示符,輸入以下代碼:
print("HelloWorld")
接下來,選擇菜單File-Save(或是ctrl+s)保存程序,如今開始運行程序Run-Run Module(或是快捷鍵F5),在解釋器窗口將打印出HelloWorld.
上一章已經設置了python的環境變量如今直接使用(設置環境變量僅適用於windows).
使用DOS窗口:將可執行文件存入目錄,輸入下列命令:
A:\>python test.py
HelloWorld
使用UXIN編輯腳本:
#!/usr/bin/env python
print("HelloWorld")
執行程序:
$ chmod a+x test.py #添加執行權限
$ ./test.py
查看保留字 關鍵字命令:
>>> import keyword
>>> keyword.kwlist
>>> ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try',
'while', 'with', 'yield']
這些保留字不能用做常數或變數,或任何其餘標識符名稱。
函數:
前面介紹了乘方(**)運算,其實也能夠不使用這種方式進行計算而使用函數pow。
>>> 2 ** 3
8
>>> pow(2,3)
8
函數猶如小型程序,來執行特定的操做。python提供了不少函數,也能夠本身編寫函數(後面介紹),所以一般將pow等標準函數稱爲內置函數。
例如:abs計算絕對值,round四捨五入。
>>> abs(-9)
9
>>> round(5.2)
5
>>> round(5.8)
6
模塊:一般模塊做爲一個文件,import語句將一個源代碼文件做爲模塊導入函數模塊。
>>> import math
>>> math.floor(32.9) #向下取整
32
>>> math.ceil(32.9) #向上取整
33
還可以使用from模塊調用函數.from module import function
>>> from math import sqrt
>>> sqrt(9) #sqrt計算平方根函數
3.0
使用這種方式可在調用函數時不指定模塊前綴。
cmath和複數
函數sqrt用戶計算平方根,若是出現負數狀況可很差用。
>>> sqrt(-1)
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
sqrt(-1)
ValueError: math domain error
報錯了,說明函數sqrt來計算負數並不合適,負數的平方根爲虛數,而由實部和虛部組成的數爲複數,python標準庫提供了一個專門用於處理複數的模塊。
>>> import cmath
>>> cmath.sqrt(-1)
1j
1是個虛數,虛數都以J(或j)結尾,複數算術運算都基於以下定義:-1的平方根爲1j。
註釋:
單行註釋用#表示,在python中,井號後面的行尾的全部內容都將被忽略。
#打印圓的周長
print(2 * pi * r)
多行註釋用''' '''表示
註釋讓程序員更容易理解代碼,對其餘人來講也是如此,在編寫程序一段時間後回來繼續閱讀代碼將毫無阻礙。
註釋應言簡意賅,好比:
name="joy" # 定義變量name同時將joy賦值給name.這種註釋在前期剛學代碼時爲了增強記憶理解標註很正常 可是在工做中就很雞肋,應避免相似註釋出現。
字符串:主要用途是表示一短文本。
>>> "helloworld"
'helloworld'
>>> 'helloworld'
'helloworld'
>>> "let's go"# 字符串自己帶有單引號,若是繼續用單引號括起來,就會報錯,只有用雙引號括起來才能夠。同理,若是字符串自己帶有雙引號,
"let's go" # 則必須用單引號括起來
>>> 'let 's go'
SyntaxError: invalid syntax # 這裏把'let'認爲是字符串,當前行餘下的內容不知如何處理因此就報錯了
>>> "let \'s go!" #或者對引號進行轉義
"let 's go!"
拼接字符串
>>> X = 'Hello,'
>>> Y = 'Andy.'
>>> X + Y
'Hello,Andy.'
長字符串
表示很長的字符串(跨越多行的字符串)可以使用三引號。
print('''What do you think was the author's
intention in this passage?
''')
還可以使用三個雙引號,「「「 Hello」」」,解釋器可以識別表示字符串開始和結束位置的引號,所以字符串自己可包含單引號和雙引號,無需使用反斜槓進行轉義。
常規字符串也可橫跨多行,只要在行尾加上反斜槓,反斜槓和換行符將被轉義。
>>> print \
("HelloWorld")
HelloWorld
>>> 2 + 3 \
+4+5
14
原始字符串
\n表示換行
>>> print('Hello,\nworld')
Hello,
world
若是想在字符串中包含\n呢,例如字符串中包含路徑C:\nowhere
>>> path='C:\nowhere'
>>> path
'C:\nowhere'
>>> print(path)
C:
owhere
示例中打印出來就出現問題了,有時候這種結果並不是你想要的
>>> print('C:\\nowhere')
C:\nowhere
使用反斜槓自己進行轉義也能夠達到目的,可是有個更好的方法。另外原始字符不可使用單個反斜槓結尾。
>>> print(r'C:\nowhere')C:\nowhere