def test(x,y=2):
print(x)
print(y)

test(1,3)

#默认参数特点:调用函数的时候,默认参数非必传

#用途:1.默认值

def conn(host,post=3306):
pass

conn()
-------------------------------------------------------------------------------
def test(x,y,z=2):
print(x)
print(y)
print(z)

test(1,2)
test(1,2,3)#不论是否有默认参数,实参都不能比形参多

#实参数目不固定,形参怎么定义-->参数组

def test(*args): #实参数据不固定用"*"开头
print(args)

test(1,2,3,4,5,5)
test(*[1,2,3,4,5])# *args= *[1,2,3,4,5]--> args=tuple([1,2,3,4,5])

# *args:接收N个位置参数,转换成元组的方式
def test1(x,*args):
print(x)
print(args)

test1(1,2,3,4,5,6,7)

#**kwargs: 把N个关键字参数,转换成字典的方式
def test2(**kwargs):
print(kwargs)
print(kwargs['name'])
print(kwargs['age'])

test2(name='alex',age=8,sex='F')
test2(**{'name':'alex','age':8})

#位置参数+字典
def test3(name,**kwargs):
print(name)
print(kwargs)

test3('alex',**{'age':8,'sex':'F'})
test3('alex',age=8,sex='M')

#默认参数+字典
def test4(name,age=18,**kwargs):#参数组在最后
print(name)
print(age)
print(kwargs)

test4('alex',sex='m',hobby='tesla')
test4('alex',sex='m',hobby='tesla',age=3)

def test5(name,age=18,*args,**kwargs):#参数组在最后
print(name)
print(age)
print(args)
print(kwargs)

test5('alex',sex='m',hobby='tesla',age=3)

更多相关文章

  1. 函数参数中裸星号的目的是什么?
  2. 在Python中强制使用函数参数类型?
  3. python中函数参数传递的几种方法
  4. 通过分隔符计数和位置从数据框中提取特定文本
  5. Python3语法——Python3函数参数的各种形式
  6. python 按位置关系输出矩阵元素
  7. python 函数、参数及参数解构
  8. 从bash脚本传递参数到python解释器
  9. 是否可以使用argparse来捕获任意一组可选参数?

随机推荐

  1. 2、MySQL 8.0参考手册 连接到服务器并断
  2. ERROR 2002 (HY000): Can't connect to l
  3. 如何在mysql数据库中找到类似的二进制字
  4. 初始化mysql数据库 /usr/bin/mysql_insta
  5. mysql数据库集群方案(内部资料)
  6. MySQL:ERROR 1227(42000):访问被拒绝 - 无法
  7. Centos安装完MariaDB后启动不了 MySQL is
  8. 在我的sql中调用触发器中的函数
  9. 【转】MySQL分库分表环境下全局ID生成方
  10. PHP和MySQL ACID程序设计