標籤:class 空格 glob 調用 文法 padding self nal tab
python語句和文法
python程式結構:
1.程式由模組構成。
2.模組包含語句。
3.語句包含運算式。
4.運算式建立並處理對象。
python的文法實質上是有語句和運算式組成的。運算式處理對象並嵌套在語句中。語句還是對象產生的地方(例如,指派陳述式中的運算式),有些語句會完全產生新的物件類型(函數、類等)。語句總是存在於模組中,而模組本身則又是由語句來管理的。
python語句:
| 語句 |
角色 |
例子 |
| 賦值 |
建立引用值 |
a,b,c = ‘good’,’bad’,’ugly’ |
| 調用 |
執行函數 |
log.write(‘hello,world’) |
| 列印調用 |
列印對象 |
print(“hello world”) |
| if/elif/else |
選擇動作 |
if ‘print’ in text: print(text) |
| for/else |
序列迭代 |
for x in mylist: print(x) |
| while/else |
一般迴圈 |
while x>y: print(“hello”) |
| pass |
空預留位置 |
while True: pass |
| break |
迴圈退出 |
while True: if exittest(): break |
| continue |
繼續下一次迴圈 |
while True: if skiptest(): continue |
| def |
函數和方法 |
def f(a,b,c=1,*d): print(a+b+c+d[0]) |
| return |
函數返回結果 |
def f(a,b,c=1,*d): return a+b+c+d[0] |
| yield |
產生器運算式 |
def gen(n): for i in n:yield i * 2 |
| global |
命名空間,全域變數 |
x = ‘old’ def function(x): global x,y,;x = ‘new’ |
| nonlocal |
局部變數(python3.0+) |
def outer(): x = ‘old’ def function(): nonlocalx;n=’new’ |
| import |
模組訪問,匯入 |
import sys |
| from |
模組屬性訪問 |
from sys import stdin |
| class |
建立對象 |
class Subclass(Superclass): staticData = [] def method(self): pass |
| try/except/finally |
捕捉異常 |
try: action() except: print(‘action error’) |
| raise |
觸發異常 |
raise EbdSearch(location) |
| assert |
調試檢查 |
assert x>y,’x too small’ |
| with/as |
環境管理器 |
with open(‘data’) as myfile: process(myfile) |
| del |
刪除引用 |
del data[k] del data[i:j] del obj.attr del variable |
終止行就是終止語句
x = 1;
在python中,一般原則是,一行的結束會自動終止出現該行的語句.也就是可以省略分號.
x = 1
- 一行的結束就是終止該行語句(沒有分號).
- 嵌套語句是代碼塊並且與實際的縮排相關(沒有大括弧).
雖然語句一般都是一行一個,但在python中也有可能出現某一行擠進多個語句情況,這時他們由分號隔開:
>>> a = 1;b = 2;print(a + b)3
這時python中唯一需要分號的地方——作為語句界定符。
語句的另一個特殊規則基本可以讓一個語句的範圍橫跨多行。為了能實現這一操作,只需要一對括弧把語句括起來就可以了:括弧(),方括弧[],或者字典的大括弧{}。任何括在這些符號裡的程式碼都可橫跨好幾行。語句將一直運行,直到遇到包含閉合括弧的哪一行。
>>> mylist = [111,... 222,... 333,... 444]>>> mylist[111, 222, 333, 444]
括弧可以包含一切的——因為任何錶達式都可以包含在內。
x = (a + b + c + d)if(A == 1 and b == 2 and c == 3): print(‘hello world‘)
還有一條老的規則也允許我們跨越數行——當上一行以反斜線結束時,可以在下一行繼續:
X = A + B + C + D
縮排
python複合陳述式採用縮排代碼風格。一般為4個空格。
while (x > 0): ---1---- ---2---- ....
指派陳述式\運算式和列印
python語句和文法