笔记||Python3之算法
循环嵌套:先从外层循环里面取出一个元素,再执行内层的循环;当内层的循环都执行后,再执行外层循环。
for循环嵌套语法:
for x in range():
for y in range():
statements(s)
statements(s)
案例1:9 * 9乘法表:
for i in range(1,10):
for j in range(1, i+1):
print('{}**{}'.format(j,i,j * i), end='\t')
print()
那指定行数的乘法表? 只需要加个函数方法,然后调用传入实参即可。 end=''代表不换行
while循环嵌套语法:
while 表达式:
while 表达式:
statements(s)
statements(s)
也可以在循环体内嵌入其他的循环体,如在while循环中可以嵌入for循环。
案例2:输入2 -- 100之间的素数
i = 2
while(i < 100):
j = 2
while(j <= (i / j)):
if not(i % j):
break
j = j + 1
if (j > i / j):
print(i, '是素数')
i = i + 1
print(good bye !)
列表生成式:是python的一个内置的强大的功能,可以帮助你更好的简化代码。
例子:aftertax = [int(one * 0.9) for one in beforetax]
当然还可以加过滤条件:aftertax = [int(one * 0.9) for one in beforetax if one >= 10000]
算法: 1 - 冒泡排序(升序、降序) --- 简而言之,就是相邻元素对比,大的值往后移
如果想排序,不能用冒泡排序,还有什么方法呢?
①利用排序函数sort
②通过for循环 先找到最小的存放到新建列表中,同时删除原来列表已找到的那个最小值,依次类推,直到所有元素都放到新列表里。
2 - 选择排序
3 - 插入排序