First Class
语言中的对象始终要统一处理。它们可以存储在数据结构中, 可以作为参数传递, 也可以在控制结构中使用。如果一种编程语言将函数视为一流的对象, 则称其支持一流的功能。 Python支持First Class函数的概念。
一级函数的属性:
- 函数是对象类型的实例。
- 你可以将函数存储在变量中。
- 你可以将该函数作为参数传递给另一个函数。
- 你可以从函数返回函数。
- 你可以将它们存储在哈希表, 列表等数据结构中。
【Python中的First Class函数介绍和用法】1.函数是对象:Python函数是一流的对象。在下面的示例中, 我们将函数分配给变量。此分配不会调用该函数。它使用shout引用的函数对象并创建指向它的第二个名称yell。
# Python program to illustrate functions
# can be treated as objects
def shout(text):
return text.upper()print shout( 'Hello' )yell = shoutprint yell( 'Hello' )
输出如下
HELLO
HELLO
2.函数可以作为参数传递给其他函数:因为函数是对象, 所以我们可以将它们作为参数传递给其他函数。可以接受其他函数作为参数的函数也称为高阶函数。在下面的示例中, 我们创建了一个函数迎接它以函数作为参数。
# Python program to illustrate functions
# can be passed as arguments to other functions
def shout(text):
return text.upper()def whisper(text):
return text.lower()def greet(func):
# storing the function in a variable
greeting = func( "Hi, I am created by a function passed as an argument." )
print greeting greet(shout)
greet(whisper)
输出如下
HI, I AM CREATED BY A FUNCTION PASSED AS AN ARGUMENT.
hi, i am created by a function passed as an argument.
3.函数可以返回另一个函数:因为函数是对象, 所以我们可以从另一个函数返回一个函数。在下面的示例中, create_adder函数返回加法器函数。
# Python program to illustrate functions
# Functions can return another functiondef create_adder(x):
def adder(y):
return x + yreturn adderadd_15 = create_adder( 15 )print add_15( 10 )
25
如果发现任何不正确的地方, 或者想分享有关上述主题的更多信息, 请写评论。
注意怪胎!巩固你的基础Python编程基础课程和学习基础知识。
首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。
推荐阅读
- 诺基亚实习面试|诺基亚在校园
- 算法设计(最长剩余时间优先(LRTF)CPU调度程序)
- 三星暑期实习研发面试经验|校园班加罗尔
- 堆(heap)数据结构的应用
- AngularJS 动画制作详细实现代码
- 线程(使用信号量的生产者消费者问题套装1)
- 什么是本地主机(localhost)()
- PHP | chmod()函数文件权限用法详解
- Java中的默认数组值用法详解