Python(4)循环嵌套算法及冒泡排序

1、循环嵌套
例:男孩和女孩依次握手 (外层取一个元素,内层循环执行完再执行外层)
boys = ['a','b','c','d','e']
girls = ['1','2','3','4','5']
for boy in boys:
     for girl in girls:
     print('%s shakes %s'%(boy,girl))


2.列表生成
扣税10%,计算所有员工税后工资,存储在列表里
befortax = [100,200,150,400,555]
aftertax = []
for one in befortax:
     aftertax.append(one*0.9)

aftertax =[int(one*0.9) for one in befortax]#另一种简洁的写法

3.冒泡排序
面试问:什么是冒泡排序?
答:给定n个数值,按照从小到大或从大到小的排序。
从第一个记录开始依次和相领值进行比较,根据大小判断是否交换,
然后第2个执行相同操作直到完成所有排序
'''
思路:第1轮第1个元素a[0]与第2个元素a[1]比,如果a[0]>a[1]交换位置,
然后a[1]和a[2]比,这样最后最大元素就到了a[n-1];第二轮比较剩余的n-1个
元素(a[0]到a[n-2]),这样依次循环完毕
'''
alist = [3,5,7,2,56,34,54,23,21,56,33,2,4,6]
方法一:
def bubble(alist):
    for j in range(len(alist)-1,0,-1):
        for i in range(0,j):
            if alist[i]>alist[i+1]:
               alist[i],alist[i+1] = alist[i+1],alist[i]
    return alist

方法二:
def bubblesort(alist):
     for k in range(len(alist)):
         for i in range(0,len(alist)-k-1):
             if alist[i]>alist[i+1]:
                alist[i],alist[i+1]=alist[i+1],alist[i]
     return alist
print(bubblesort(alist))

4.pass关键字,定义一个空语句
 def meth_a(self):
     pass

你可能感兴趣的:(python基础)