【Python面试题】-函数

本文详细介绍了Python中函数的相关面试题,包括参数传递、内建函数、Lambda表达式等知识点,涵盖缺省参数、map/reduce函数、递归、回调函数等内容,并通过实例解析了lambda函数的运用及闭包陷阱。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【Python面试题】-函数

1.  函数参数

1.1 Python 函数调用的时候参数的传递方式是值传递还是引用传递?

Python 的参数传递有:位置参数、默认参数、可变参数、关键字参数。 函数的传值到底是值传递还是引用传递,要分情况:

不可变参数用值传递:

像整数和字符串这样的不可变对象,是通过拷贝进行传递的,因为你无论如何都不可能在原处改变

不可变对象 可变参数是引用传递的:

比如像列表,字典这样的对象是通过引用传递、和 C 语言里面的用指针传递数组很相似,可变对象 能在函数内部改变。

 

1.2 对缺省参数的理解 ?

缺省参数指在调用函数的时候没有传入参数的情况下,调用默认的参数,在调用函数的同时赋值时, 所传入的参数会替代默认参数。

*args 是不定长参数,他可以表示输入参数是不确定的,可以是任意多个。

**kwargs 是关键字参数,赋值的时候是以键 = 值的方式,参数是可以任意多对在定义函数的时候 不确定会有多少参数会传入时,就可以使用两个参数。

 

1.3 为什么函数名字可以当做参数用?

Python 中一切皆对象,函数名是函数在内存中的空间,也是一个对象。

 

1.4 Python 中 pass 语句的作用是什么?

在编写代码时只写框架思路,具体实现还未编写就可以用 pass 进行占位,使程序不报错,不会进 行任何操作。

 

1.5 有这样一段代码,print c 会输出什么,为什么?

a = 10

b = 20

c = [a]

a = 15

答:10 对于字符串、数字,传递是相应的值。

 

1.6 交换两个变量的值?

1. a,b = b,a

 

2.  内建函数

2.1 map 函数和 reduce 函数?

①从参数方面来讲:

map()包含两个参数,第一个参数是一个函数,第二个是序列(列表 或元组)。其中,函数(即 map 的第一个参数位置的函数)可以接收一个或多个参数。

reduce()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值