Python 有特定的內置函數,因此它支持多個順序容器中的許多循環技術。這些循環函數和方法對於競爭性編碼非常有用。它可以在不同的項目中使用,在這些項目中,用戶必須使用一些特定的循環技術來維護程序的整個結構。這些技術有助於節省時間和內存空間,因為用戶不必為傳統的循環方法聲明額外的變量。
這些循環技術用在哪裡?
不同類型的循環技術用於用戶不必操作代碼結構或整個容器順序的地方。相反,用戶必須打印單次使用實例的元素,並且容器中不會發生原地更改。這些也可以用來節省時間和內存。
使用 Python 數據結構的循環技術:
- enumerate():enumerate()函數用於循環遍歷容器,並使用特定索引中的值打印索引號。
示例:
for key, value in enumerate(['Joe', 'waited', 'for', 'the', 'train', ',', 'but', 'the', 'train', 'was', 'late', '.']):
print(key, value)
輸出:
0 Joe
1 waited
2 for
3 the
4 train
5 ,
6 but
7 the
8 train
9 was
10 late
11 .
- zip():zip()函數用於通過按順序打印兩個相似容器的值來組合這兩個容器,如 dict 與 dict 或 list 與 list。該循環僅在較小容器結束後存在。
示例:
# first, we will initialize the list
question = ['animal', 'shape', 'time']
answer = ['tiger', 'square', '11 o clock']
# the zip() function will be used for combining these two containers
for question, answer in zip(question, answer):
print('What is this {0}? this is {1}.'.format(question, answer))
輸出:
What is this animal? this is tiger.
What is this shape? this is square.
What is this time? this is 11 o clock.
- items():items()函數用於循環遍歷字典,並按順序打印關鍵字及其值。
示例:
dict = { "Joe" : "waited", "for" : "the", "train" : "but", "the" : "train", "was" : "late" }
# the use items for print the dictionary key-value pair
print ("The key value pair by using items is : ")
for a, b in dict.items():
print(a, b)
輸出:
The key value pair by using items is :
Joe waited
for the
train but
the train
was late
- sorted():sorted()函數用於按排序順序打印容器。這個函數不排序容器,但是它用於按照排序的順序打印容器。用戶可以使用 set()函數和 sorted()函數來刪除輸出中的重複值。
例 1:
# first, initialize the list
list = [ 1 , 4, 6, 7, 1, 2, 4 ]
# using sorted() to print the list in sorted order
print ("The list in sorted order is : ")
for a in sorted(list) :
print (a, end = " ")
print ("\r")
# now use the sorted() function and set() function for printing the list in sorted order
# use of set() to removes duplicates in output value.
print ("The list in sorted order (without duplicates) is : ")
for a in sorted(set(list)) :
print (a, end = " ")
輸出:
The list in sorted order is :
1 1 2 4 4 6 7
The list in sorted order (without duplicates) is :
1 2 4 6 7
例 2:
# initializing list
list2 = ['Joe', 'waited', 'for', 'the', 'train', 'but', 'the', 'train', 'was', 'late']
# now use the sorted() function and set() function for printing the list in sorted order
for sentence in sorted(set(list2)):
print(sentence)
輸出:
Joe
but
for
late
the
train
waited
was
- reversed():reserved()函數用於以相反的順序打印容器的值。
例 1:
# initializing list
list = [ 1 , 3, 5, 7, 9, 11, 13, 15, 17, 19, 21 ]
# by using the revered() function for printing the list in reversed order
print ("The list in reversed order is : ")
for a in reversed(list) :
print (a, end = " ")
輸出:
The list in reversed order is :
21 19 17 15 13 11 9 7 5 3 1
例 2:
for b in reversed(range(1, 20, 2)):
print (b)
輸出:
19
17
15
13
11
9
7
5
3
1
結論
在本教程中,我們討論了有助於節省內存和時間的不同類型的裁剪技術。
原創文章,作者:ZG8R0,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/128529.html