python(五)递归、冒泡

1.递归函数  其实是一种循环,自己调用自己,但是循环效率没有for循环效率高,需要有一个结束的条件。例如:

def  test ():

     num=int(input('please enter a number:'))

     if num%2==0:

            return True

     print(“不是偶数”)

     return test()

2.冒泡排序

l = [2,5,12,352,1,23,35,63,5,2] # 0-9
for i in range(len(l)-1): #这个是控制总共需要多少趟
    for j in range(len(l)-1-i): #这个循环是控制交换的 9
        if l[j] > l[j+1]:
            l[j],l[j+1] = l[j+1],l[j]

 

二维数组的冒泡排序

d = {'行者无疆': 246, '王三侠': 210, '大亮': 128, '毛多锁': 418, '追~落日': 3.21, '小文': 416, '瑞峰': 22.13, '尤文奎Alex': 138, '阿梁': 167, '山峰': 0, 'David': 350, '胖胖球🐌': 68.16, '幸福哥': 100, '梁明': 350, '郝明明': 64, '赵宗来': 136.32, '平民之女': 9.66, '王俊兵': 65, '祁棒棒': 79.24, '陈陈': 20, '兔兔': 49, '小了白了兔': 55, '高娃': 100.7, '漠然': 139, '心语': 216, '王成': 183, '陈卫亮': 141.75}

data = list(d.items())
# print(data)
for i in range(len(data)-1): #这个是控制总共需要多少趟
    for j in range(len(data)-1-i): #这个循环是控制交换的 9
        if data[j][-1] < data[j+1][-1]:
            data[j],data[j+1] = data[j+1],data[j]
count = 1
for name,km in data:
    print('%s. %s %s'%(count,name,km))
    count+=1

 

posted @ 2019-07-10 19:44  测试freshman  阅读(230)  评论(0编辑  收藏  举报