Python中函数的定义、函数可变参数传递以及简单示例

---------------------------------------------------------------------------------------------------------------------------------

  • 定义方法

    • 原则:序列结构
def funcname(parameter,perameter):
    pass    # 代码执行模块
    return value    # 函数返回值,没有编写则默认为none,且标志程序结束
---------------------------------------------------------------------------------
#eg.编写加减法程序,返回加法和减法值
def add_and_sub(a,b):
    add = a + b
    sub = a - b
    return add, sub
#调用函数并打印 add 和 sub 的值
m,n = add_and_sub ( 88,77 )    # 设定两个变量接收元组元素
print('加法值为=', m, '减法值为=', n)
k = add_and_sub(88, 77)    # 返回元组 tuple 类型
print('函数返回内容为', k, '函数返回值类型为',type(k))

  • 参数类型

    • 关键字参数

      • 无视序列解构
    • 默认值参数

      • 函数定义域内赋值
    • 可变参数

      • def variable(*value)
        • * 表示序列类型的可变参数
          • type(value)为‘tuple’
        • * *表示字典类型的可变参数
# 示例:
# 原函数
def add_and_sub(a,b):
    add = a + b
    sub = a - b
    return add, sub
c = add_and_sub(88, 77)   
c = (165,11)
--------------------------------------------------------------------------------
# 关键字参数
# 改动位置
c = add_and_sub(b=88, a=77)    # 关键字参数,调用时定义,无视序列结构规则
# 结果 
c = (165, -11)
--------------------------------------------------------------------------------
# 默认值参数
# 改动位置 
def add_and_sub(a,b=77):    # 设置默认值,并且默认值参数要置后
c = add_and_sub(99)    # 序列解构,若此处赋值给b=99,则覆盖默认值,执行b=99 
# 结果
c = (176, 22)
--------------------------------------------------------------------------------
  •  可变参数运行机理:
# 可变参数示例
# eg.点菜场景,data:食物(多)+桌号(单)
def variable(*food,number):
    print('第', number, '桌客人的菜单')
    for i in food:
        print(i)
food = ['pineapple','shark','water']    # 将可变参数存储在list里,系统执行list为变量
variable(food, number = '12')    # 没有达到可变参数目的

def variable(*food,number):
    print('第', number, '桌客人的菜单')
    for i in food:
        print(i)
variable('pineapple','shark','water', number = '12')
# 将 变量内容 直接导入 可变参数位置
# 其余变量(如:number), 需设置关键字变量,因为程序无法自动识别

  • 变量作用域

    • 局部变量

      • 作用于函数内部
      • 内部采用全局变量
        • eg.需要全局变量x, 则函数内部插入语句global x
    • 全局变量

      • 作用于全局
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是羽十八ya

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值