Python函数的必选参数、默认参数、可变参数、关键字参数和命名关键字参数

必选参数

def function(args_name):
    print (args_name)

function("参数调用")
~$ 参数调用

跟在函数名口号内的为参数名,参数在调用函数时必须给函数传递指定数量的参数

默认参数

def function(args_name="参数调用"):
    print(args_name)
function()

~$ 参数调用

参数名后使用=号给参数赋值之后参数拥有了默认值,以后在调用该参数时,不给默认参数赋值程序也不会报错

可变参数

def function(*args_name):
    sum = 0
    for i in args_name:
        sum +=i
    print(sum)
function(1,2,3,4,5)

~$ 15

可变参数的定义是在参数前添加一个*号,可变参数在函数内被视为一个tuple .「该参数可不传参」

关键字参数

def function(**args_name):
    print(args_name['name'])
function(name="jobs",age=18)

~$ jobs

关键字的意思是以dict作为数据类型将参数传递给函数,key:value 「该参数可不传参」

命名关键字参数

def function(*,name,age,city):
    print("name:",name,"age:",age,"city:",city)
function(name="jobs",age=18,city="shanghai")

~$ name: jobs age: 18 city: shanghai

命名关键字参数就是将dict的key提前定义,调用函数时传参只能传入已定义key的参数

Original: https://www.cnblogs.com/alanwoz/p/16393749.html
Author: alanWoz
Title: Python函数的必选参数、默认参数、可变参数、关键字参数和命名关键字参数

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/643592/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 十大经典排序算法(动图演示)

    转自:https://www.cnblogs.com/onepixel/articles/7674659.html 0、算法概述 0.1 算法分类 十种常见排序算法可以分为两大类:…

    技术杂谈 2023年6月1日
    072
  • 关于IoAttachDeviceToDeviceStack

    IoAttachDeviceToDeviceStack将Source Device附加到Target Device上。 打开windbgkd> u IoAttachDevic…

    技术杂谈 2023年5月31日
    091
  • Windows用户态程序高效排错–Heap和Stack[转帖]

    平坦内存空间中的层次结构:Heap和Stack 本小结主要介绍Heap相关的崩溃和内存泄漏,和如何使用pageheap来排错。首先介绍heap的原理,不同层面的内存分配,接下来通过…

    技术杂谈 2023年7月24日
    065
  • MySQL高级

    事务是一个不可分割的工作逻辑单元。 举例:张三和李四账户中各有100块钱,现李四需要转换500块钱给张三,具体的转账操作为: 第一步:查询李四账户余额 第二步:从李四账户金额 -5…

    技术杂谈 2023年7月25日
    071
  • [转]Jira Work with issue workflows

    A Jira workflow is a set of statuses and transitions that an issue moves through during it…

    技术杂谈 2023年5月30日
    092
  • wsl 加入右键菜单

    如果系统上安装两个版本wsl ubuntu,默认只有一个在右键菜单里,如果加另外一个1、找到ubuntu位置,复制2、打开注册表windows 与 R,输入regedit并运行,定…

    技术杂谈 2023年6月1日
    081
  • NatTypeTester

    NatTypeTester https://opensourcelibs.com/ https://github.com/HMBSbige/NatTypeTester/releas…

    技术杂谈 2023年5月30日
    067
  • tensorflow 2.1 采坑记

    tf 2.1 安装了好多遍,把python 从3.6 搞到了3.7还是没办法安装成功 问题出在这里要使用这些新软件包,用户必须安装「Microsoft Visual C ++ Re…

    技术杂谈 2023年7月11日
    096
  • numpy中矩阵的逆,求解,特征值,特征向量

    逆:numpy.linalg.inv() 求矩阵的逆import numpy as npa=np.mat(‘1 0;0 1’)#生成一个矩阵print(ty…

    技术杂谈 2023年7月24日
    072
  • 《分享收获 社区支持农业指导手册》笔记

    什么是社区支持农业 社区支持农业是一种社区附近农民和吃这个农民生产的产品的人之间的联系。 食品生产者 + 食品消费者 + 每一年度的彼此承诺 = CSA和无数的可能性 这个相互承诺…

    技术杂谈 2023年5月31日
    088
  • 关于提问

    A 和 B 对话如下: A: xx 产品,一个月一个版本,只包含一个小功能,培训销售的工作跟不上怎么办?培训工作跟不上,研发做的功能前端都不知道,那做了有什么用?为什么不规划成大版…

    技术杂谈 2023年7月11日
    087
  • 嵌入式软件架构设计-函数调用

    1 前言 函数调用很好理解,即使刚学没多久的朋友也知道函数调用是怎么实现的,即调用一个已经封装好的函数,实现某个特定的功能。 把一个或者多个功能通过函数的方式封装起来,对外只提供一…

    技术杂谈 2023年7月25日
    062
  • button按钮

    *button按钮私有属性 属性 说明 value button中的文案 posted @2020-09-04 16:53 tinyphp Views(246 ) Comments…

    技术杂谈 2023年6月1日
    094
  • Linux Accounting(中文翻译)(2):Delay Accounting

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    技术杂谈 2023年7月11日
    076
  • 【数据结构】10.java源码关于LinkedHashMap

    目录 1.LinkedHashMap的内部结构2.LinkedHashMap构造函数3.元素新增策略4.元素删除5.元素修改和查找6.特殊操作7.扩容8.总结 1.LinkedHa…

    技术杂谈 2023年7月24日
    050
  • OS第三章错题补充

    OS第三章错题补充 ​ 批处理作业调度原则:公平性、极大的流量、平衡资源使用 ​ ​ 每个进程申请该类资源最多为4,6*3=18,再加上一个额外的资源,所以20个资源完全够6个程序…

    技术杂谈 2023年7月11日
    081
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球