一、嵌套循環的簡介
在Python編程中,嵌套循環是一個非常重要的概念。它是指在循環體內,再嵌套另一個循環,用來實現多層循環控制,從而遍曆數據、生成序列、篩選數據等操作。
嵌套循環的語法結構為:
for x in 元素1: for y in 元素2: #執行語句
其中,元素1和元素2可以是任意類型的Python對象,只要可以被迭代就可以使用。執行語句的內容可以是任意的Python代碼。
下面展示一個簡單的嵌套循環示例,用來實現打印九九乘法表:
for i in range(1, 10): for j in range(1, i+1): print(i, '*', j, '=', i*j, end='\t') print()
運行結果如下:
1 * 1 = 1 2 * 1 = 2 2 * 2 = 4 3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16 5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25 6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36 7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49 8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64 9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81
二、遍歷二維數組
在Python中,我們經常需要處理多維數組。如果是二維數組,我們就可以使用嵌套循環來遍歷或者處理。
下面展示一個示例,用來計算一個二維數組中所有元素的和:
arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] total = 0 for row in arr: for elem in row: total += elem print(total)
運行結果為:
45
三、生成嵌套列表
在Python中,我們也可以生成嵌套列表。這個需要使用到列表推導式,結合嵌套循環可以很方便地實現。
下面展示一個示例,用來生成一個2*3的嵌套列表:
lst = [[0 for j in range(3)] for i in range(2)] print(lst)
運行結果為:
[[0, 0, 0], [0, 0, 0]]
四、選擇排序算法
選擇排序是一種基本的排序算法,它的基本思路是每次從待排序元素中選擇最小(或最大)的一個元素,將其放到已排序序列的末尾。在Python中,我們也可以使用嵌套循環來實現選擇排序。
下面展示一個示例,用來對一個列表進行選擇排序:
lst = [5, 3, 8, 6, 4, 2, 7, 1] n = len(lst) for i in range(n-1): min_idx = i for j in range(i+1, n): if lst[j] < lst[min_idx]: min_idx = j lst[i], lst[min_idx] = lst[min_idx], lst[i] print(lst)
運行結果為:
[1, 2, 3, 4, 5, 6, 7, 8]
五、計算圓周率
計算圓周率是一個經典的計算問題,可以使用嵌套循環來進行實現。
下面展示一個示例,用來計算圓周率的值:
from random import random from math import sqrt n = 1000000 cnt = 0 for i in range(n): x = random() y = random() if sqrt(x**2 + y**2) < 1: cnt += 1 pi = 4 * cnt / n print(pi)
運行結果為:
3.142704
六、總結
嵌套循環是Python編程中一個非常實用的概念。它可以用來遍歷多維數據、生成嵌套列表、實現排序算法等。掌握嵌套循環的基本語法結構,可以讓我們的Python編程更加靈活和高效。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/291910.html