Python的基本語法規則介紹
以下以python3.x為參照
互動式程式設計
-
直接在命令列工具下輸入
python3
然後回車,可以看到python的版本資訊等 -
在命令提示符號
>>
後輸入print('hello world!')
然後回車,可以看到輸出hello world!
-
輸入
exit()
退出 -
python -h
顯示命令的幫助
指令碼式程式設計
-
在.py指令碼檔案中編寫程式碼,然後用
python
命令執行這個指令碼檔案 -
建立一個app.py檔案,包含
print('hello world!')
,儲存. -
在命令列用
cd xxx
進入app.py所在資料夾,執行python3 app.py
回車,可以看到輸出hello world!
- 在windows系統中app.py可以被直接執行,但在Linux或MacOS中需要以下處理:
- 修改app.py檔案為
#!/usr/bin/python print('hello!')
-
執行命令,授予app.py可執行許可權,
chmod a+x app.py
-
使用
./app.py
命令執行,輸出hello world!
,注意這裡./
不可省略
識別符號
- 識別符號是用來指代某個資料或物件、方法的符號,簡單理解就是名稱
- 在 Python 中,所有識別符號可以包括英文、數字以及下劃線(_),但不能以數字開頭。
- Python 中的識別符號是區分大小寫的。
- 以下劃線開頭的識別符號是有特殊意義的。以單下劃線開頭 _foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不能用 from xxx import * 而匯入;
- 以雙下劃線開頭的 __foo 代表類的私有成員;以雙下劃線開頭和結尾的foo 代表 Python 裡特殊方法專用的標識,如init () 代表類的建構函式。
-
Python 可以同一行顯示多條語句,方法是用分號 ; 分開,如:
print(1);print(2)
輸出1和2
保留字
- 保留字是Python官方保留使用的單詞,不能用作常數或變數,或任何其他識別符號名稱。
- 保留字只包含小寫字母保留字如下:
- and exec not assert finally or break for pass class from print continue global
- raise def if return del import try elif in while else is with except lambda yield
行和縮排
- Python 的程式碼塊不使用大括號 {} 來控制類,函式以及其他邏輯判斷。python 最具特色的就是用縮排來寫模組。
- 縮排的空白數量是可變的,但是所有程式碼塊語句必須包含相同的縮排空白數量,這個必須嚴格執行。
- 不要使用以下格式的程式碼,因為兩個層級相同的print使用了不同的右縮排,第一個用tab鍵第二個用空格:
if True: print "True" else: print "False"
多行語句
- 我們可以使用斜槓( \)將一行的語句分為多行顯示,如下程式碼輸出abc:
s = 'a' + \ 'b' + \ 'c' print(s)
- 語句中包含 [], {} 或 () 括號就不需要使用多行連線符。如下例項:
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
引號
- Python 可以使用引號( ' )、雙引號( " )、三引號( ''' 或 """ ) 來表示字串,引號的開始與結束必須的相同型別的。
- 三引號可以由多行組成,編寫多行文字的快捷語法,常用於文件字串,在檔案的特定地點,被當做註釋。
a = 'abc' b = "這是一個句子。" c = """這是一個段落。 包含了多個語句"""
- 可以使用單引號包裹雙引號,也可以相反,但不能直接用單引號包裹單引號,或雙引號包裹雙引號,斜槓\加單引號或雙引號直接輸出引號,不影響其他:
s1="he said 'OK!'" s2='he write that:"tom said \"OK!\""' print(s1) print(s2)
以上程式碼輸出
he said 'OK!' he write that:"tom said "OK!""
註釋
- 每一行#後面的行將不被執行,視為註釋
- 多行註釋可以使用三個單引號或三個雙引號包裹註釋內容
#!/usr/bin/python #-*- coding: UTF-8 -*- #檔名:app.py #這是一個註釋 print("Hello, Python!");#第二個註釋 ''' 這是多行的 註釋 '''
空行
- 空行並不是Python語法的一部分。書寫時不插入空行,Python直譯器執行也不會出錯。
- 空行的作用在於分隔兩段不同功能或含義的程式碼,便於日後程式碼的維護或重構。
等待使用者輸入
-
a=input('請輸入:')
程式將暫停等待使用者輸入,並把輸入內容賦值到a
同一行顯示多條語句
-
可以用分號分開多個語句在同一行連續執行,例如
print(1);print(2)
,但不推薦這種寫法
輸出
-
使用
print('a','b')
輸連續多個字串 -
使用
a=100;print('A%d' % a)
輸出數字變數,得到A100
輸出 -
使用
b='XX';print('B%s' % b)
輸出字串變數,得到BXX
輸出
程式碼塊
- 同樣縮排的連續程式碼被視為一個程式碼塊,具有同樣的語義範圍
a=100 if True: a=99 print('in:',a) print('out:',a)
以上程式碼輸出,因為第四行和第三行在一個程式碼塊,而第五行和第一第二行在同一程式碼塊
in: 99 out: 99