例1:输出99乘法表
1 for x in range(1, 10): 2 for y in range(1, x+1): 3 print("{} * {} = {} ".format(y, x, x * y), end="") 4 print()
例2:经典冒泡算法: 利用for循环,完成a=[1,7,4,89,34,2]的冒泡排序。 冒泡排序:小的排前面,大的排后面。 两两相邻对比排序,最终使得数组中的这几个数字按照从小到大的顺序排序。
1 解法1:正序思维 2 a = [1, 7, 4, 89, 34, 2] 3 # 循环的轮数,最多循环n-1轮(可以少但不会多) 4 for i in range(len(a) - 1): 5 # 对比的次数,第i轮就有i个数确定 6 for j in range(len(a) - 1 - i): 7 if a[j] > a[j + 1]: 8 a[j], a[j + 1] = a[j + 1], a[j] 9 else: 10 pass 11 print(a) 12 <<< [1, 2, 4, 7, 34, 89]
1 解法2:逆向思维,递减 2 a = [1, 7, 4, 89, 34, 2] 3 for row in range(len(a)-1,0,-1): 4 for col in range(row): 5 if a[col]>a[col+1]: 6 a[col],a[col+1] = a[col+1],a[col] 7 print(a)