当前位置:   article > 正文

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

python可变参数如何定义

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

  • 定义方法

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

  • 参数类型

    • 关键字参数

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

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

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

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

  • 变量作用域

    • 局部变量

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

      • 作用于全局
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/71165
推荐阅读
相关标签
  

闽ICP备14008679号