1. 程式人生 > 其它 >python入門教程之四基本語法

python入門教程之四基本語法

1Python 識別符號

在 Python 裡,識別符號由字母、數字、下劃線組成。

在 Python 中,所有識別符號可以包括英文、數字以及下劃線(_),但不能以數字開頭。

Python 中的識別符號是區分大小寫的。

以下劃線開頭的識別符號是有特殊意義的。以單下劃線開頭 _foo 的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不能用 from xxx import * 而匯入。

以雙下劃線開頭的 __foo 代表類的私有成員,以雙下劃線開頭和結尾的 __foo__ 代表 Python 裡特殊方法專用的標識,如 __init__() 代表類的建構函式。

Python 可以同一行顯示多條語句,方法是用分號 ; 分開,如:

>>> print ('hello');print ('runoob');
hello
runoob

2Python 保留字元

下面的列表顯示了在Python中的保留字。這些保留字不能用作常數或變數,或任何其他識別符號名稱。

所有 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

3行和縮排

學習 Python 與其他語言最大的區別就是,Python 的程式碼塊不使用大括號 {} 來控制類,函式以及其他邏輯判斷。python 最具特色的就是用縮排來寫模組。

縮排的空白數量是可變的,但是所有程式碼塊語句必須包含相同的縮排空白數量,這個必須嚴格執行。

以下例項縮排為四個空格:

例項

if True:
    print ("True")
else:
    print ("False")

以下程式碼將會執行錯誤:

例項

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 檔名:test.py

if True:
    print ("Answer")
    print ("True")
else:
    print ("Answer")
    # 沒有嚴格縮排,在執行時會報錯
  print ("False")

執行以上程式碼,會出現如下錯誤提醒:

  File "test.py", line 11
    print ("False")
                  ^
IndentationError: unindent does not match any outer indentation level

IndentationError: unindent does not match any outer indentation level錯誤表明,你使用的縮排方式不一致,有的是 tab 鍵縮排,有的是空格縮排,改為一致即可。

如果是 IndentationError: unexpected indent 錯誤, 則 python 編譯器是在告訴你"Hi,老兄,你的檔案裡格式不對了,可能是tab和空格沒對齊的問題",所有 python 對格式要求非常嚴格。

因此,在 Python 的程式碼塊中必須使用相同數目的行首縮排空格數。

建議你在每個縮排層次使用 單個製表符 或 兩個空格 或 四個空格 , 切記不能混用


4行語句

Python語句中一般以新行作為語句的結束符。

但是我們可以使用斜槓( \)將一行的語句分為多行顯示,如下所示:

total = item_one + \
        item_two + \
        item_three

語句中包含 [], {} 或 () 括號就不需要使用多行連線符。如下例項:

days = ['Monday', 'Tuesday', 'Wednesday',
        'Thursday', 'Friday']

5Python 引號

Python 可以使用引號( ' )、雙引號( " )、三引號( ''' 或 """ ) 來表示字串,引號的開始與結束必須是相同型別的。

其中三引號可以由多行組成,編寫多行文字的快捷語法,常用於文件字串,在檔案的特定地點,被當做註釋。

word = 'word'
sentence = "這是一個句子。"
paragraph = """這是一個段落。
包含了多個語句"""

6Python註釋

python中單行註釋採用 # 開頭。

例項

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 檔名:test.py

# 第一個註釋
print ("Hello, Python!")  # 第二個註釋

輸出結果:

Hello, Python!

註釋可以在語句或表示式行末:

name = "Runoob" # 這裡的內容是一個註釋

python 中多行註釋使用三個單引號 ''' 或三個雙引號 """。

例項

#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 檔名:test.py


'''
這是多行註釋,使用單引號。
這是多行註釋,使用單引號。
這是多行註釋,使用單引號。
'''

"""
這是多行註釋,使用雙引號。
這是多行註釋,使用雙引號。
這是多行註釋,使用雙引號。
"""

7Python空行

函式之間或類的方法之間用空行分隔,表示一段新的程式碼的開始。類和函式入口之間也用一行空行分隔,以突出函式入口的開始。

空行與程式碼縮排不同,空行並不是Python語法的一部分。書寫時不插入空行,Python直譯器執行也不會出錯。但是空行的作用在於分隔兩段不同功能或含義的程式碼,便於日後程式碼的維護或重構。

記住:空行也是程式程式碼的一部分。


等待使用者輸入

下面的程式執行後就會等待使用者輸入,按回車鍵後就會退出:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

raw_input("按下 enter 鍵退出,其他任意鍵顯示...\n")

以上程式碼中 ,\n 實現換行。一旦使用者按下 enter(回車) 鍵退出,其它鍵顯示。


8同一行顯示多條語句

Python可以在同一行中使用多條語句,語句之間使用分號(;)分割,以下是一個簡單的例項:

 

#!/usr/bin/python

import sys; x = 'runoob'; sys.stdout.write(x + '\n')

執行以上程式碼,輸入結果為:

$ python test.py
runoob

9print 輸出

print 預設輸出是換行的,如果要實現不換行需要在變數末尾加上逗號 ,。

例項

#!/usr/bin/python
# -*- coding: UTF-8 -*-

x="a"
y="b"
# 換行輸出
print x
print y

print '---------'
# 不換行輸出
print x,
print y,

# 不換行輸出
print x,y

以上例項執行結果為:

a
b
---------
a b a b

更多內容參考:Python2 與 Python3 print 不換行


10多個語句構成程式碼組

縮排相同的一組語句構成一個程式碼塊,我們稱之程式碼組。

像if、while、def和class這樣的複合語句,首行以關鍵字開始,以冒號( : )結束,該行之後的一行或多行程式碼構成程式碼組。

我們將首行及後面的程式碼組稱為一個子句(clause)。

如下例項:

if expression : 
   suite 
elif expression :  
   suite  
else :  
   suite 

11命令列引數

很多程式可以執行一些操作來檢視一些基本資訊,Python 可以使用 -h 引數檢視各引數幫助資訊:

$ python -h 
usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ... 
Options and arguments (and corresponding environment variables): 
-c cmd : program passed in as string (terminates option list) 
-d     : debug output from parser (also PYTHONDEBUG=x) 
-E     : ignore environment variables (such as PYTHONPATH) 
-h     : print this help message and exit 
 
[ etc. ]2022-04-07