在寫代碼的時候,免不了要使用變數。但程式中的一個變數並不一定是在哪裡都可以被使用,根據情況不同,會有不同的“有效範圍”。 看這樣一段代碼: def func(x): print ('X in the beginning of func(x): ', x) x = 2 print ('X in the ...
reserved() 是 Pyton 內置函數之一,其功能是對於給定的序列(包括列表、元組、字元串以及 range(n) 區間),該函數可以返回一個逆序序列的迭代器(用於遍歷該逆序序列)。
reserved() 函數的語法格式如下:
reversed(seq)
其中,seq 可以是列表,元素,字元串以及 range() 生成的區間列表。
下麵程式演示了 reversed() 函數的基本用法:
#將列表進行逆序
print([x for x in reversed([1,2,3,4,5])])
#將元組進行逆序
print([x for x in reversed((1,2,3,4,5))])
#將字元串進行逆序
print([x for x in reversed("abcdefg")])
#將 range() 生成的區間列表進行逆序
print([x for x in reversed(range(10))])
程式執行結果為:
[5, 4, 3, 2, 1]
[5, 4, 3, 2, 1]
['g', 'f', 'e', 'd', 'c', 'b', 'a']
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
除了使用列表推導式的方式,還可以使用 list() 函數,將 reversed() 函數逆序返回的迭代器,直接轉換成列表。例如:
#將列表進行逆序
print(list(reversed([1,2,3,4,5])))
程式執行結果為:
[5, 4, 3, 2, 1]
再次強調,使用 reversed() 函數進行逆序操作,並不會修改原來序列中元素的順序,例如:
a = [1,2,3,4,5]
#將列表進行逆序
print(list(reversed(a)))
print("a=",a)
程式執行結果為:
[5, 4, 3, 2, 1]
a= [1, 2, 3, 4, 5]