
编程开发
切片copy
当我们需要在Go语言中复制一个切片时,我们可以使用内置的copy函数。copy函数可以将一个切片的元素复制到另一个切片中。下面是一个示例: 在上面的示例中,我们首先创建了一个源切片
#!/usr/bin/python3
#coding:utf-8
#~~~~~~~~~~~~www.wulaoer.org 吴老二个人博客~~~~~~~
def wulaoer(x):
wolf=x * x
return wolf
print("整数的平方值",wulaoer(2))
打印结果:
整数的平方值 4在这里wulaoer()就是一个函数,在这个基础上我们写一个高阶函数。首先在wulaoer这个函数中传入的是一个整数,那么我可以把这个整数替换成一个函数,然后,在函数中做一个判断,判断传入的值是否是整数,并返回一个值,传到wulaoer()函数中。看下面的例子:
#!/usr/bin/python3
#coding:utf-8
#~~~~~~~~~~~~www.wulaoer.org 吴老二个人博客~~~~~~~
def ints(s):
if type(s) == int:
return s
else:
return None
def wulaoer(func):
wolf=func * func
return wolf
#print("整数的平方值",wulaoer(2))
print("一个函数的值作为另一个函数的参数",wulaoer(ints(2)))
打印结果:
一个函数的值作为另一个函数的参数 4在上面的实例中,wulaoer()函数的参数就是一个函数的结果,我们就可以把wulaoer()函数叫做高阶函数。如果函数wulaoer()不加参数只是一个函数本身,去掉括号就是一个对象打印的是内存地址,可以赋值给变量,在调用的时候我们可以使用赋值后的变量进行调用。看下面的例子:
#!/usr/bin/python3
#coding:utf-8
#~~~~~~~~~~~~www.wulaoer.org 吴老二个人博客~~~~~~~
def ints(s):
if type(s) == int:
return s
else:
return None
def wulaoer(func):
wolf=func * func
return wolf
#print("整数的平方值",wulaoer(2))
print("一个函数的值作为另一个函数的参数",wulaoer(ints(2)))
wulaoer.org=ints
print("函数赋值给变量后调用变量",wulaoer(wulaoer.org(6)))
打印结果:
一个函数的值作为另一个函数的参数 4 函数赋值给变量后调用变量 36其实,我们可以把函数名就看作是一个变量,它指向一个可以计算绝对值的函数。如果我们把ints指向一个对象,那么在调用的时候就不会调用函数本身,而对调用一个指定的对象了。 在python中,像这种一个函数的值作为另一个函数的参数被调用的过程就是高阶函数,而且python中有很多这种类似的高阶函数,例如:map、filter、reduce。
评论 0