06-撩课-Python面试宝典-第六篇

一. 函数的概念是什么? 在Python中如何定义?使用场景是什么?
  1. 概念
    写了一段代码实现了某个小功能; 然后把这些代码集中到一块, 起一个名字; 下一次就可以根据这个名字再次使用这个代码块, 这就是函数

  2. 定义

def 函数名称(参数1, 参数2...):
       pass # 具体的函数执行代码
       return None # 默认,  可以根据需求设置返回值
  1. 使用场景
    将需要多次执行的重复性代码, 进行封装成函数, 方便代码的重用
def xxx():
   print(1)
   print(2)
   print(3)

将有规律的重复性代码, 封装成函数, 更加灵活方便

def xxx(num):
   for i in range(0, num):
       print(i)

分解任务, 简化程序逻辑, 使代码更加模块化

def firstStep():
   pass
def secondStep():
   pass
def thirdStep():
   pass
firstStep()
secondStep()
thirdStep()
二. 尝试封装一个函数, 计算不定数据的累加和, 返回给外界
def 累加和(num):
    result = 0
    for i in range(1, num + 1):
        result += i
    return result

print(累加和(4)) # 10
print(累加和(10)) # 55
三. 如何定义不定长参数函数?
def  函数名(*args): 
    pass
def 函数名(**kwargs):
    pass

前者是普通参数
后者适用于关键字参数
需要注意: 传递之后的拆包操作

  1. 装包
    把传递的参数, 包装成一个集合, 称之为"装包"
  2. 拆包
    把集合参数, 再次分解成单独的个体, 称之为"拆包"
四. 缺省参数代表什么含义?
  1. 场景
    当我们使用一个函数的时候, 如果大多数情况下, 使用的某个数据是一个固定值, 或者属于主功能之外的小功能实现;
    则可以使用默认值
    这种参数, 称为"缺省参数"
  2. 定义
    def 函数名(变量名1=默认值1, 变量名2=默认值2):
    函数体
    函数体中, 即使外界没有传递指定变量, 也可以使用, 只不过值是给定的默认值
  3. 使用
    函数名(变量1, 变量2)
    此处如果是缺省参数, 则可以不填写
def sum(a, b = 0):
    print(a + b)

sum(6) # 6
sum(2, 6) # 8
五. Python函数中, 值是引用传递还是值传递?
  1. 值传递和引用传递
    1.1 值传递
    是指传递过来的, 是一个数据的副本;
    修改副本, 对原件没有任何影响
    1.2引用传递
    是指传递过来的, 是一个变量的地址
    通过地址, 可以操作同一份原件

  2. 在Python当中, 你没得选, 只有引用传递(地址传递)
    但是
    如果数据类型是可变类型, 则可以改变原件
    如果数据类型是不可变类型, 则不可以改变原件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值