Python3基礎語法
Python語言有許多與Perl,C和Java的相似之處。不過,語言之間也有一些明顯的差異。
第一個Python程序
讓我們在不同的編程模式下執行程序。
交互模式編程
調用解釋器,不用通過一個腳本文件作爲參數,如下提示 -
$ python
Python 3.3.2 (default, Dec 10 2013, 11:35:01)
[GCC 4.6.3] on Linux
Type "help", "copyright", "credits", or "license" for more information.
在 Windows 系統上:
C:\Users\Administrator>python
Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AM
D64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
在 Python 提示符下編寫下面的文本代碼,然後按Enter:
>>> print ("Hello, Python!")
如果你使用的是 Python(Python2.X)的舊版本,在print 函數使用括號是一個可選項。這將產生以下的結果:
Hello, Python!
腳本編程模式
解釋器調用一個腳本參數開始執行腳本,並一直持續到腳本完成。當腳本完成,解釋器活動失效。
讓我們在腳本中寫一個簡單的 Python 程序。Python文件使用 .py 擴展名。 創建一個文件 test.py 並寫入以下代碼:
print ("Hello, Python!")
假設你已經在 PATH 變量中設置了 Python 解釋器路徑。 現在,試着如下運行這個程序 -
在Linux上執行
$ python test.py
這將產生以下的結果:
Hello, Python!
在 Windows 上執行
C:\Python3>Python test.py
這將產生以下的結果:
Hello, Python!
讓我們嘗試使用另一種方式在Linux中執行 Python 腳本。下面是修改 test.py 文件 -
#!/usr/bin/python3
print ("Hello, Python!")
假設你已經在 /usr/bin目錄安裝好了 Python 解釋器。現在,試着如下運行這個程序 -
$ chmod +x test.py # This is to make file executable
$./test.py
這將產生以下結果 -
Hello, Python!
Python標識符
Python標識符是用來標識變量,函數,類,模塊或其他對象的名稱。標識符是以字母A到Z開始或a〜z或後跟零個或多個字母下劃線(_),下劃線和數字(0〜9)。
Python標識符範圍內的不容許有如:@, $ 和 % 符號。Python是一種區分大小寫的編程語言。因此,Manpower 和 manpower 在Python中是兩種不同的標識符。
下面是 Python 標識符命名的約定 -
類名稱使用大寫字母。所有其它標識符開始使用小寫字母。
開頭使用一個下劃線的標識符表示該標識符是私有的。
開始以兩個前導下劃線的標識符表示強烈私有的標識符。
如果標識符使用兩個下劃線作爲結束時,所述標識符是語言定義的特殊的名字。
保留字
Python 的關鍵字如下列出。這些是保留字,不能把它們作爲常量或變量或任何其他標識符名稱。 所有Python的關鍵字僅包含小寫字母。
and
exec
Not
as
finally
or
assert
for
pass
break
from
class
global
raise
continue
if
return
def
import
try
del
in
while
elif
is
with
else
lambda
yield
except
行和縮進
Python不使用大括號({})來表示的代碼塊類和函數定義或流程控制。代碼塊由行縮進,這是嚴格執行表示。
在縮進位的數目是可變的,但該塊內的所有語句的縮進量必須相同。 例如 -
if True:
print ("True")
else:
print ("False")
但是,以下塊產生一個錯誤 -
if True:
print ("Answer")
print ("True")
else:
print "(Answer")
print ("False")
因此,Python中所有連續不換行,同樣數量的空格縮進將形成一個塊。下面的例子有各種各樣的語句塊 -
注意:不要試圖理解其中的邏輯在這個時候。只要你明白,即使他們不使用括號在各個模塊。
#!/usr/bin/python3
import sys
try:
open file stream
file = open(file_name, "w")
except IOError:
print ("There was an error writing to", file_name)
sys.exit()
print ("Enter '", file_finish,)
print "' When finished"
while file_text != file_finish:
file_text = raw_input("Enter text: ")
if file_text == file_finish:
# close the file
file.close
break
file.write(file_text)
file.write("\n")
file.close()
file_name = input("Enter filename: ")
if len(file_name) == 0:
print ("Next time please enter something")
sys.exit()
try:
file = open(file_name, "r")
except IOError:
print ("There was an error reading file")
sys.exit()
file_text = file.read()
file.close()
print (file_text)
多行語句
在Python語句通常使用一個新行作爲結束。但是,Python 允許使用續行字符(\)表示讓行可以連續下去。例如-
total = item_one + \
item_two + \
item_three
語句中包含 [], {}, 或() 括號內不需要使用續行字符。 例如−
days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
在Python的引號
Python接受單引號('),雙引號(「)和三('''或」「」)引用來表示字符串,只要是同一類型的引號開始和結束。
三重引號可用於跨越多個行字符串。例如,下面所有的都是合法的 -
word = 'word'
sentence = "This is a sentence."
paragraph = """This is a paragraph. It is
made up of multiple lines and sentences."""
Python中的註釋
哈希符號(#)這是一個字符作爲註釋的開頭。在#之後到行末的所有字符都是註釋的一部分,Python解釋器會忽略它們。
#!/usr/bin/python3
First comment
print ("Hello, Python!") # second comment
這將產生以下結果 -
Hello, Python!
你可以聲明或表達式之後的同一行寫上註釋 -
name = "Madisetti" # This is again comment
Python沒有多行註釋功能。所以你應該單行註釋每一行如下-
# This is a comment.
This is a comment, too.
This is a comment, too.
I said that already.
使用空行
僅包含空格,可能帶有註釋行,如果是空行Python會完全忽略它。
在交互式解釋器會話,則必須輸入一個空的物理行來終止多行語句。
等待用戶
程序的下面一行顯示提示聲明說:「按回車鍵退出」,並等待用戶操作 -
#!/usr/bin/python3
input("\n\nPress the enter key to exit.")
在這裏,「\n\n」是用來顯示實際行之前創建的兩條新行。一旦用戶按下鍵時,程序就結束。 這是一個很好的技巧,以保持控制檯窗口打開,直到用戶來指定終止應用程序運行。
在一行多條語句
分號(;)允許給在單行有多條語句,而不管語句開始一個新的代碼塊。下面是使用分號的示例-
import sys; x = 'foo'; sys.stdout.write(x + '\n')
多重聲明組爲套件
一組單獨的語句,它們使單一代碼塊化在Python稱爲套件。複雜的語句,如 if, while, def, 和 class 需要一個標頭行和一個套件。
頭部行開始的語句(以關鍵字),並用冒號終止(:),後面跟一行或多行組成套件。例如 -
if expression :
suite
elif expression :
suite
else :
suite
命令行參數
很多程序都可以運行,爲您提供關於應當如何運行的一些基本信息。 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. ]
您也可以在這樣的,它應該接受各種選擇的方式編寫腳本。命令行參數是一個高級的主題,當你已經學習了Python概念後,其餘部分的內容我們將在接下來的章節中學習。