python编程///安全渗透测试2020/1/14

2020/1/15@python函数编程与高阶函数////安全方向之渗透测试(1)

python函数编程

把函数作为参数传递给另外的函数

找到符合条件下的最小对象

def get_min(target, func_condition):
	min_value=target[0]
	for i in range(1,len(target)):
		if func_condition(min_value)> func_condition(target[i]):
			min_value=target[i]
	return min_value

降序排列

def order_by_descending(target,func_condition):
	for r in range(len(target)-1):
		for c in range(r+1,len(target)):
			if func_condition(target[r]< func_condition(target[c]):
				target[r], target[c]=target[c],target[r]

![

万能排序

自定义万能排序方法

def sort(target,func_condition):
    for r in range(len(target)-1):
   	for c in range(r+1, len(target)):
            if func_condition:
                target[r],target[c]=target[c],target[r]
           

自定义万能排序方法具体例子

def sort1(target,func_condition):
    for r in range(len(target)-1):
        for c in range(r+1,len(target)):
            if func_condition(target[r],target[c]):
                target[r],target[c]=target[c],target[r]
list01=[3,34,5,6,8]
sort1(list01,lambda e1,e2:e1<e2)
print(list01)          

def sort(target,func_condition):
"""
万能排序
:param target: 需要排序的数据
:param func_condition: 排序的逻辑
       func_condition 类型是函数,参数是列表中的连个元素
                    返回值是比较的结果
                    方法体是比较的条件
:return:
"""
   for r in range(len(target)-1):
       for c in range(r+1,len(target)):
           if func_condition(target[r],target[c]):
               target[r],target[c]=target[c],target[r]

#共性(func_condition)提取出来,个性(具体排序条件)单独去定义
在这里插入图片描述

外部嵌套作用域 local关键词,python语言特性只可以访问不可更改,如果想更改,需要声明关键字 nonlocal

发布了18 篇原创文章 · 获赞 0 · 访问量 273

猜你喜欢

转载自blog.csdn.net/dongxieaitonglao/article/details/103979197