簡單語句由(邏輯上的)一行組成。
1.表達式語句
表達式也可以是語句。如果表達式是函數調用或者文檔字符串的話尤其有用。
例如:
“This modue contains SPAM-related function.”
2.斷言語句
斷言語句可以檢查條件是否為真,如果不為真則引發一個AssertionError(可選提供的錯誤信息)異常
例如:
assert age >=12, ‘Children under the age of 12 are not allowed’
3.賦值語句
賦值語句將變量綁定到值上。多個變量可同時賦值(通過隊列解包),賦值也可以是連鎖的。
例如:
x = 42 #簡單賦值
name, age = ‘Gumby’, 60 #序列解包
x = y = z = 10 #鏈式賦值
4.增量賦值語句
賦值也可以通過運算符來擴充,運算符可以已有變量值和新值,然后變量會被重新綁定到結果上。如果原始的值是可變,那么它會被修改(變量仍然綁定到初始值)。
5.pass語句
pass語句是一個“無操作”,也就是什么都不做。他可以作為占位符,或者在你不需要做任何事情的函數中作為要求語法結構的塊中唯一的語句。
例如:
try : x.name
except AttributeError: pass
else: print ‘Hello’, x.name
6.del語句
del語句解除變量和特性的綁定,並且移除數據結構(映射或序列)中的某部分(位置、切片或者存儲槽)。他不能用於直接刪除值,因為值只能通過垃圾收集進行刪除。
例如:
del x 解除變量綁定
del seq[42] 刪除序列元素
del seq[42:] 刪除序列切片
del map[‘foo’] 刪除一個映射項
7.print語句
print語句將一個或多個值(自動使用str格式化,由單空格隔開)寫入到給定的流中,默認為sys.sdtout。除非print語句以逗號結束,否則它會在所寫字符串的結尾增加一個換行符。
print ‘Hello, world!’ #將’Hello, world\n’寫入到sys.stdout中
print 1, 2, 3 #將’1 2 3\n’寫入sys.stout中
print >>somefile, ‘xyz’ #將’xyz’寫入somefile中
print 42 #將’42’寫入sys.stout中
8.return語句
return語句會終止函數的運行,並且返回值。如果沒有提供值,則返回None。
例如:
return #從當前函數中返回None
return 42 #從當前函數中返回42
return 1, 2, 3 #從當前函數中返回(1, 2, 3)
9.yield語句
yield語句會暫時終止生成器的執行並且生成一個值。生成器是迭代器的一種形式,可以和其他對象一起用於for循環。
例如:
yield 42 從當前函數中返回42
10.raise語句
raise 語句引發一個異常。可以不用參數進行調用(在except子句內,重引發當前捕捉到的異常),也可以子類化Exception並且提供可選的參數(在這種情況下,會構造一個實例),或是使用Exception子類的一個實例。
例如:
raise #只能用於except子句內
raise IndexError
raise IndexError, ‘index out of bounds’
raise IndexError(‘index out of bounds’)
11.break語句
break語句會結束當前的循環語句(for或while),並且會立即執行循環后的語句。
例如:
while True:
line = file.readline( )
if not line: break
print line
12.cotinue語句
cotinue語句類似於break語句,它也會終止當前循環中的迭代,但是並不會完全終止循環,而是從下一個迭代過程的開始處繼續執行。
例如:
while True:
line = file.readline( )
if not line: break
if line.isspace( ): continue
print line
13.import語句
import語句用於從外部模塊導入名稱(綁定到函數、類、或者其他值的變量)。這也包括了from_future_import...語句。這個語句用於導入在未來的Python版本中的特性。
例如:
import math
from math import sqrt
from math import sqrt as squareroot
from math import *
14.global語句
global語句用於標記一個變量為全局變量。它可以用在函數內,以允許函數體內的語句重綁定全局變量。使用global語句一般來說被認為是不好的編程風格,能避免的話盡量避免。
例如:
count = 1
def inc( ):
global count
count += 1
15.exec語句
exec語句用於執行包含Python語句的字符串,可選擇給定的全局和局部命名空間(字典)。
例如:
exec ‘print “Hello, world”’
exec ‘x = 2’in myglobals. mylocals #myglobals和mylocals都是字典