Python語言與Perl畅厢,C和Java等語言有許多相似之處业崖。但是,也存在一些差異黍翎。
第一個Python程序
交互式編程
交互式編程不需要創(chuàng)建腳本文件面徽,是通過 Python 解釋器的交互模式進(jìn)來編寫代碼。
linux上你只需要在命令行中輸入 Python 命令即可啟動交互式編程,提示窗口如下:
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32Type "copyright", "credits" or "license()" for more information.
Window上在安裝Python時已經(jīng)已經(jīng)安裝了默認(rèn)的交互式編程客戶端匣掸,提示窗口如下:
在 python 提示符中輸入以下文本信息趟紊,然后按 Enter 鍵查看運(yùn)行效果:
>>> print ("Hello, Python!");
在 Python 3.5.2 版本中,以上實(shí)例輸出結(jié)果如下:
Hello, Python!
腳本式編程
通過腳本參數(shù)調(diào)用解釋器開始執(zhí)行腳本,直到腳本執(zhí)行完畢碰酝。當(dāng)腳本執(zhí)行完成后霎匈,解釋器不再有效。
讓我們寫一個簡單的Python腳本程序送爸。所有Python文件將以.py為擴(kuò)展名铛嘱。將以下的源代碼拷貝至test.py文件中。
print ("Hello, Python!");
這里袭厂,假設(shè)你已經(jīng)設(shè)置了Python解釋器PATH變量墨吓。使用以下命令運(yùn)行程序:
$ python test.py
輸出結(jié)果:
Hello, Python!
讓我們嘗試另一種方式來執(zhí)行Python腳本。修改test.py文件纹磺,如下所示:
#!/usr/bin/python
print ("Hello, Python!");
這里帖烘,假定您的Python解釋器在/usr/bin目錄中,使用以下命令執(zhí)行腳本:
$ chmod +x test.py # 腳本文件添加可執(zhí)行權(quán)限
$ ./test.py
輸出結(jié)果:
Hello, Python!
Python 標(biāo)識符
在python里橄杨,標(biāo)識符有字母秘症、數(shù)字、下劃線組成式矫。
在python中乡摹,所有標(biāo)識符可以包括英文、數(shù)字以及下劃線(_
)采转,但不能以數(shù)字開頭聪廉。
python中的標(biāo)識符是區(qū)分大小寫的。
以下劃線開頭的標(biāo)識符是有特殊意義的故慈。以單下劃線開頭(_foo
)的代表不能直接訪問的類屬性锄列,需通過類提供的接口進(jìn)行訪問,不能用"from xxx import *"而導(dǎo)入惯悠;
以雙下劃線開頭的(__foo
)代表類的私有成員邻邮;以雙下劃線開頭和結(jié)尾的(__foo__
)代表python里特殊方法專用的標(biāo)識,如__init__()
代表類的構(gòu)造函數(shù)克婶。
Python 保留字符
下面的列表顯示了在Python中的保留字筒严。這些保留字不能用作常數(shù)或變數(shù),或任何其他標(biāo)識符名稱情萤。
所有Python的關(guān)鍵字只包含小寫字母鸭蛙。
太多后面補(bǔ)
行和縮進(jìn)
學(xué)習(xí)Python與其他語言最大的區(qū)別就是,Python的代碼塊不使用大括號({}
)來控制類筋岛,函數(shù)以及其他邏輯判斷娶视。python最具特色的就是用縮進(jìn)來寫模塊。
縮進(jìn)的空白數(shù)量是可變的,但是所有代碼塊語句必須包含相同的縮進(jìn)空白數(shù)量肪获,這個必須嚴(yán)格執(zhí)行寝凌。如下所示:
if True:
print "True"
else:
print "False"
以下代碼將會執(zhí)行錯誤:
#!/usr/bin/python
# 文件名:test.py
if True:
print "Answer"
print "True"
else:
print "Answer"
# 沒有嚴(yán)格縮進(jìn),在執(zhí)行時保持
print "False"
執(zhí)行以上代碼孝赫,會出現(xiàn)如下錯誤提醒:
$ python test.py
File "test.py", line 5
if True:
^
IndentationError: unexpected indent
**IndentationError: unexpected indent **錯誤是python編譯器是在告訴你"Hi较木,老兄,你的文件里格式不對了青柄,可能是tab和空格沒對齊的問題"伐债,所有python對格式要求非常嚴(yán)格。
如果是 IndentationError: unindent does not match any outer indentation level錯誤表明致开,你使用的縮進(jìn)方式不一致峰锁,有的是 tab 鍵縮進(jìn),有的是空格縮進(jìn)双戳,改為一致即可虹蒋。
因此,在Python的代碼塊中必須使用相同數(shù)目的行首縮進(jìn)空格數(shù)拣技。
建議你在每個縮進(jìn)層次使用 單個制表符 或 兩個空格 或 四個空格 , 切記不能混用
多行語句
Python語句中一般以新行作為為語句的結(jié)束符千诬。
但是我們可以使用斜杠(\
)將一行的語句分為多行顯示,如下所示:
total = item_one + \
item_two + \
item_three
語句中包含[]
,{}
或()
括號就不需要使用多行連接符膏斤。如下實(shí)例:
days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
Python 引號
Python 接收單引號('
)徐绑,雙引號("
),三引號(''' """
) 來表示字符串莫辨,引號的開始與結(jié)束必須的相同類型的傲茄。
其中三引號可以由多行組成,編寫多行文本的快捷語法沮榜,常用語文檔字符串盘榨,在文件的特定地點(diǎn),被當(dāng)做注釋蟆融。
word = 'word'
sentence = "這是一個句子草巡。"
paragraph = """這是一個段落。
包含了多個語句"""
Python 注釋
python中單行注釋采用 #
開頭型酥。
#!/usr/bin/python
# 文件名:test.py
# 第一個注釋
print ("Hello, Python!"); # 第二個注釋
輸出結(jié)果:
Hello, Python!
注釋可以在語句或表達(dá)式行末:
name = "Madisetti" # 這是一個注釋
python 中多行注釋使用三個單引號('''
)或三個雙引號("""
)山憨。
#!/usr/bin/python
# 文件名:test.py
'''
這是多行注釋,使用單引號弥喉。
這是多行注釋郁竟,使用單引號。
這是多行注釋由境,使用單引號棚亩。
'''
"""
這是多行注釋蓖议,使用雙引號。
這是多行注釋讥蟆,使用雙引號勒虾。
這是多行注釋,使用雙引號攻询。
"""
Python 空行
函數(shù)之間或類的方法之間用空行分隔从撼,表示一段新的代碼的開始州弟。類和函數(shù)入口之間也用一行空行分隔钧栖,以突出函數(shù)入口的開始。
空行與代碼縮進(jìn)不同婆翔,空行并不是Python語法的一部分拯杠。書寫時不插入空行,Python解釋器運(yùn)行也不會出錯啃奴。但是空行的作用在于分隔兩段不同功能或含義的代碼潭陪,便于日后代碼的維護(hù)或重構(gòu)。
記鬃罾佟:空行也是程序代碼的一部分依溯。
等待用戶輸入
下面的程序在按回車鍵后就會等待用戶輸入:
#!/usr/bin/python
raw_input("\n\nPress the enter key to exit.")
以上代碼中 ,"\n\n"在結(jié)果輸出前會輸出兩個新的空行瘟则。一旦用戶按下鍵時黎炉,程序?qū)⑼顺觥?/p>
同一行顯示多條語句
Python可以在同一行中使用多條語句,語句之間使用分號(;)分割醋拧,以下是一個簡單的實(shí)例:
#!/usr/bin/python
import sys; x = 'runoob'; sys.stdout.write(x + '\n')
執(zhí)行以上代碼慷嗜,輸入結(jié)果為:
$ python test.py
runoob
多個語句構(gòu)成代碼組
縮進(jìn)相同的一組語句構(gòu)成一個代碼塊,我們稱之代碼組丹壕。
像if
庆械、while
、def
和class
這樣的復(fù)合語句菌赖,首行以關(guān)鍵字開始缭乘,以冒號( :
)結(jié)束,該行之后的一行或多行代碼構(gòu)成代碼組琉用。
我們將首行及后面的代碼組稱為一個子句(clause)堕绩。
如下實(shí)例:
if expression :
suite
elif expression :
suite
else :
suite
命令行參數(shù)
很多程序可以執(zhí)行一些操作來查看一些基本信,Python可以使用-h參數(shù)查看各參數(shù)幫助信息:
$ 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. ]
我們在使用腳本形式執(zhí)行 Python 時辕羽,可以接收命令行輸入的參數(shù)逛尚,具體使用可以參照 Python 命令行參數(shù)。