Python 基礎文法

來源:互聯網
上載者:User

標籤:for   test   語言   意義   output   type   any   維護   while   

Python 語言與 Perl,C 和 Java 等語言有許多相似之處。但是,也存在一些差異。

在本章中我們將來學習 Python 的基礎文法,讓你快速學會 Python 編程。

第一個 Python 程式互動式編程

互動式編程不需要建立指令碼檔案,是通過 Python 解譯器的互動模式進來編寫代碼。

linux上你只需要在命令列中輸入 Python 命令即可啟動互動式編程,提示視窗如下:

$ pythonPython 2.7.6 (default, Sep  9 2014, 15:04:36) [GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwinType "help", "copyright", "credits" or "license" for more information.>>>

Window 上在安裝 Python 時已經已經安裝了預設的互動式編程用戶端,提示視窗如下:

在 python 提示符中輸入以下文本資訊,然後按 Enter 鍵查看運行效果:

>>> print "Hello, Python!";

在 Python 2.7.6 版本中,以上執行個體輸出結果如下:

Hello, Python!
指令碼式編程

通過指令碼參數調用解譯器開始執行指令碼,直到指令碼執行完畢。當指令碼執行完成後,解譯器不再有效。

讓我們寫一個簡單的 Python 指令碼程式。所有 Python 檔案將以 .py 為副檔名。將以下的原始碼拷貝至 test.py 檔案中。

print "Hello, Python!";

這裡,假設你已經設定了 Python 解譯器 PATH 變數。使用以下命令運行程式:

$ python test.py

輸出結果:

Hello, Python!

讓我們嘗試另一種方式來執行 Python 指令碼。修改 test.py 檔案,如下所示:

#!/usr/bin/pythonprint "Hello, Python!";

這裡,假定您的Python解譯器在/usr/bin目錄中,使用以下命令執行指令碼:

$ chmod +x test.py     # 指令檔添加可執行許可權$ ./test.py

輸出結果:

Hello, Python!
Python 標識符

在 Python 裡,標識符由字母、數字、底線組成。

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

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

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

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

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

>>> print ‘hello‘;print ‘runoob‘;hellorunoob
Python 保留字元

下面的列表顯示了在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
行和縮排

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

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

if True:    print "True"else:  print "False"

以下代碼將會執行錯誤:

#!/usr/bin/python# -*- coding: UTF-8 -*-# 檔案名稱:test.pyif True:    print "Answer"    print "True"else:    print "Answer"    # 沒有嚴格縮排,在執行時會報錯  print "False"

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

$ python test.py    File "test.py", line 10    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 的代碼塊中必須使用相同數目的行首縮排空格數。

建議你在每個縮排層次使用 單個定位字元 或 兩個空格 或 四個空格 , 切記不能混用

多行語句

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

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

total = item_one +         item_two +         item_three

語句中包含 [], {} 或 () 括弧就不需要使用多行串連符。如下執行個體:

days = [‘Monday‘, ‘Tuesday‘, ‘Wednesday‘,        ‘Thursday‘, ‘Friday‘]
Python 引號

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

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

word = ‘word‘sentence = "這是一個句子。"paragraph = """這是一個段落。包含了多個語句"""
Python注釋

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

#!/usr/bin/python# -*- coding: UTF-8 -*-# 檔案名稱:test.py# 第一個注釋print "Hello, Python!";  # 第二個注釋

輸出結果:

Hello, Python!

注釋可以在語句或運算式行末:

name = "Madisetti" # 這是一個注釋

python 中多行注釋使用三個單引號(‘‘‘)或三個雙引號(""")。

#!/usr/bin/python# -*- coding: UTF-8 -*-# 檔案名稱:test.py‘‘‘這是多行注釋,使用單引號。這是多行注釋,使用單引號。這是多行注釋,使用單引號。‘‘‘"""這是多行注釋,使用雙引號。這是多行注釋,使用雙引號。這是多行注釋,使用雙引號。"""
Python空行

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

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

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

等待使用者輸入

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

#!/usr/bin/python# -*- coding: UTF-8 -*-raw_input("按下 enter 鍵退出,其他任意鍵顯示...\n")

以上代碼中 ,\n 實現換行。一旦使用者按下 enter(斷行符號) 鍵退出,其它鍵顯示。

同一行顯示多條語句

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

 

#!/usr/bin/pythonimport sys; x = ‘runoob‘; sys.stdout.write(x + ‘\n‘)

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

$ python test.pyrunoob
Print 輸出

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

#!/usr/bin/python# -*- coding: UTF-8 -*-x="a"y="b"# 換行輸出print xprint yprint ‘---------‘# 不換行輸出print x,print y,# 不換行輸出print x,y

以上執行個體執行結果為:

ab---------a b a b
多個語句構成程式碼群組

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

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

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

如下執行個體:

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 時,可以接收命令列輸入的參數,具體使用可以參照 Python 命令列參數。

Python 基礎文法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.