Python(四)流程控制语句
1、while
#1)输出0-9 num = 0 while num < 10: print(num) num += 1 pass print("***************************") #2)输出9-0 num2 = 9 while num2 >= 0: print(num2) num2 -= 1 pass #3)死循环 # while true: # print("true") print("***************************") #4)输出0-9之间的偶数 num4 = 0 while num4 < 10: if num4 % 2 == 0: print(num4) num4 += 1 pass
2、while else
num5 = 0 while num5 < 10: print(num5) num5 += 1 pass else: print("值大于9了") pass
3、迭代器
#迭代器有两个基本的方法:iter()、next() set1 = {1, 2, 3, 4, 5, 6, 7} # set1 = ({1, 2, 3, 4, 5, 6, 7}) # set1 = set({1, 2, 3, 4, 5, 6, 7}) # print(set1[1]) set类型不支持下标取值 #可以使用迭代器取值 set2 = iter(set1) num = 0 #迭代器没有长度,不能len(set2) while num < len(set1): #next()一次只会对应一个元素 print(next(set2)) num += 1 pass
4、嵌套循环
#嵌套循环 for i in range(6): print("*", end = " ") pass # ****** # ****** # ****** for j in range(3): for i in range(6): print("*", end=" ") pass print("") pass print("******************************************************************************************************************") # 九九乘法表 for j in range(1, 10): for i in range(1, j + 1): print("%d * %d = %d" %(j, i, i * j), end = " ") pass print("") pass # * # ** # *** # **** # ***** print("******************************************************************************************************************") for j in range(9, 0, -1): for i in range(1, j + 1): print("%d * %d = %d" %(j, i, i * j), end = " ") pass print("") pass # ***** # **** # *** # ** # * print("******************************************************************************************************************") for j in range(9, 0, -1): print(" "*(9-j), end="") for i in range(j, 0, -1): print("%2d * %2d = %2d" %(j, i, i * j), end = " ") pass print("") pass # ***** # **** # *** # ** # * print("*******************************************************************************************************************") for j in range(1, 10): print(" "*(9-j), end="") for i in range(1, j + 1): print("%2d * %2d = %2d" %(j, i, i * j), end = " ") pass print("") pass # * # ** # *** # **** # ***** print("************************") #冒泡排序 list1 = [10, 34, 2, 5, 53, 12] for i in range(len(list1) - 1, 0, -1): for j in range(i): if (list1[j] > list1[j + 1]): list1[j + 1],list1[j] = list[j], list[j + 1]print(list1)
5、推导式
#1、将0-10添加到列表 myList = [] for i in range(10): myList.append(i) pass print("myList:",myList) #列表推导式 myList1 = [i for i in range(10)] print("myList1:", myList1) #2、将偶数加入到列表中 myList2 = [] for i in range(10): if i % 2 == 0: myList2.append(i) pass print("myList2:", myList2) #列表推导式 myList3 = [i for i in range(10) if i % 2 == 0] print("myList3:", myList3)
#3、数字折位 num = 4321 test = [int(num / 10 ** i % 10) for i in range(0, 4)] test.reverse() print(test) #[4, 3, 2, 1]
#4、使用()代替原先的[]将会得到一个generator生成器对象 kk = "asdfghj" gen = (i for i in kk) print(gen) item = iter(gen) for i in range(len(kk)): print(next(item))
浙公网安备 33010602011771号