• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
谢城
博客园    首页    新随笔    联系   管理    订阅  订阅

学习总结(十一)

1.形参与实参

形参:参数本身没有意义,有实参赋予形参值后,该形参就具备了意义
补充:有默认值的形参,在没有被实参赋值,具备的是自身意义,但一旦被实参赋值,意义同实参

实参:有实际意义的参数
           在函数调用的时候,()中传入的参数

实参分为:位置实参,关键字实参

总结:形参是对实参的值拷贝

 

2.形参的分类

六大分类:
1.无值位置形参(位置形参):可以被位置与关键字实参进行传参,必须传值

2.有值位置形参(默认形参):可以被位置与关键字实参进行传参,可以不用传参采用默认值

3.可变长位置形参:可以接受前两个没有接收完位置实参,接收的个数可以为0~n个,0个是就是空元组

4.无值关键字形参:只能由关键字实参进行传参,必须传值

5.有值关键字形参:只能由关键字实参进行传参,可以不用传参采用默认值

 6.可变长关键字形参:接收4,5没有接收完的关键字实参,接收的个数可以为0~n个,0个是就是空字典

形参声明顺序:
             位置形参:a -> 默认形参:b -> 可变长位置形参:args -> 有无默认值关键字形参:cde -> 可变长关键字形参:kwargs。
            def fn(a, b=10, *args, c, d=20, e, **kwargs): pass

 使用法则:
1.所有位置形参全部采用位置实参进行传值
2.所有关键字形参全部采用关键字实参进行传值
3.不管位置还是关键字形参,全部按照顺序进行传参

 

3.打散机制

 *单列容器 会打散单列容器,字符串也可以被打散
 **双列容器 会打散双列容器

def fn(*args, **kwargs):

*单列容器返回的是元组

**双列容器返回的是字典

 

posted @ 2019-04-25 19:46  谢城  阅读(162)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3