码迷,mamicode.com
首页 > 编程语言 > 详细

python学习之参数传递

时间:2018-07-17 19:52:17      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:one   python   调用   def   可变参数   rgs   传递   定义   code   

^参数传递分为定义(形参)和调用(实参)两种情况。^

1. 定义(形参)

  • 默认参数
def func(x, y=None):

# 任何时候必须  优先定义   位置参数
# 默认参数和可变参数*args  顺序无要求
# 任何时候必须  最后定义   可变参数**kwargs
  • 可变参数之tuple
def func(a, x=None, *y):

# x为默认参数;
# y为元组,可以为空,可以有1到多个元素,函数将依次读取y的元素,然后再函数里组成一个元组。
func(1)          # 1, None, ()
func(1,())       # 1, (),   ()
func(1,2,3,8)      # 1, 2,  (3,8)
  • 可变参数之dict
def func(x, y=0, **z):

# x为位置参数
# y为字典,可以为空,可以有1到多个字典元素,函数依次读取每个键值对,并传入在函数里组成一个字典。
func(1)          # 1, 0, {}
func(1, y=2, w=3)   # 1, 0, {‘y‘: 2, ‘w‘: 3}

2. 调用(实参)

def func(a,b,c):

tuple = (1, 2, 3)
func(*tuple)       # 1,2,3
# *tuple 将tuple拆分为三个元素,一次传递给函数的位置参数a,b,c
def func(a,b,c):

dict = {‘a‘: 1, ‘b‘: 2, ‘c‘: 3}
func(**dict)       # 1,2,3
# **dict将dict每个值按照键值对的关系传递给函数的对应参数
# 因此key必须和位置参数(默认参数可省略)一一对应,不多不少才能成功

python学习之参数传递

标签:one   python   调用   def   可变参数   rgs   传递   定义   code   

原文地址:https://www.cnblogs.com/jiukun/p/9325463.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!