python调用函数_Python 函数中的 4 种参数类型
作者:小小程序员
链接:https://zhuanlan.zhihu.com/p/89538123
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
在调用函数时,通常会传递参数,函数内部的代码保持不变,针对 不同的参数处理不同的数据。
有位置传参、关键字传参、默认值参数、多值参数等。
1、参数传递形参和实参:
- 形参:定义 函数时的 参数变量
- 实参:调用 函数时,使用的参数变量
参数传递的过程,就是 把实参的引用 传递给 形参 ,使用实参的值来执行函数体的过程。
在 Python
中,函数的 实参/返回值 都是是靠 引用 来传递来的
2、位置实参
按照参数位置,依次传递参数,这是最普通的方式。
3、关键字实参
如果不想严格按照顺序传递参数,也可以按关键字传递。
4、缺省参数
定义函数时,可以给 某个参数 赋值一个默认值,具有默认值的参数就叫做 缺省参数
- 调用函数时,如果没有传入 缺省参数 的值,则在函数内部使用 参数默认值
- 将常见的值设置为参数的缺省值,从而 简化函数的调用
- 要使用 最常见的值 作为默认值
- 如果一个参数的值 不能确定,则不应该设置默认值,具体的数值在调用函数时,由外界传递!
例如:对列表排序的方法
缺省参数的定义位置:
- 必须保证带有默认值的缺省参数在参数列表末尾!
调用带有多个缺省参数的函数:
- 在 调用函数时,如果有 多个缺省参数,需要指定参数名,这样解释器才能够知道参数的对应关系!
5、多值参数
当函数需要处理的参数个数不确定时,可使用 多值参数。python
中有两种多值参数:
- 接收 元组:参数名前加 一个
*
- 接收 字典:参数名前加 两个
*
一般在给多值参数命名时,习惯使用以下两个名字
*args
— 存放 元组 参数**kwargs
— 存放 字典 参数,(kw
即keyword
,kwargs
即 键值对参数)
拆包
在上面多值参数传递时,实际上使用了拆包功能。
拆包主要用于元组和字典参数的传递。
在调用带有多值参数的函数时,使用拆包简化参数的传递:
- 直接将一个 元组变量 实参传递给元组形参
args
- 在 元组变量前,加
*
- 在 元组变量前,加
- 直接将一个 字典变量 实参传递给字典形参
kwargs
- 在 字典变量前,加
**
- 在 字典变量前,加
python调用函数_Python 函数中的 4 种参数类型相关推荐
- 函数传参字典_Python 函数中的 4 种参数类型
作者:小小程序员 链接:https://zhuanlan.zhihu.com/p/89538123 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 在调用函数时,通常 ...
- python函数参数定义_python函数定义中的5种参数
python函数参数定义 Python函数定义中的5种参数类型: (5 Types of Arguments in Python Function Definition:) default argum ...
- python调用带参函数_Python | 带有示例的函数调用类型
python调用带参函数 There are following types of function calls in python: python中有以下类型的函数调用: Call by value ...
- python 不执行函数_解决python调用自己文件函数/执行函数找不到包问题
写python程序的时候很多人习惯创建一个utils.py文件,存放一些经常使用的函数,方便其他文件调用,同时也更好的管理一些通用函数,方便今后使用.或是两个文件之间的class或是函数调用情况. 就 ...
- python函数支持哪些参数类型_Python函数的几种参数类型
以下代码均以Python3为基础理解. 初识Python函数 大部分常见的语言如C.Java.PHP.C#.JavaScript等属于C系语言,Python不属于他们中的一员(ruby亦然).在这些语 ...
- python调用c语言函数_从Python调用C函数
python调用c语言函数 We can call a C function from Python program using the ctypes module. 我们可以使用ctypes模块从P ...
- python调用c语言内核计算,在Linux上实现Python调用C语言函数
一般思路 Python中内置ctypes库,需调用c编译成的.so文件来实现函数调用. 假设我们所需调用的c文件名为test.c,文件里有我们需要的函数func(x,y). 将.c文件编译成 .so文 ...
- Python语言学习:利用python语言实现调用内部命令(python调用Shell脚本)—命令提示符cmd的几种方法
Python语言学习:利用python语言实现调用内部命令(python调用Shell脚本)-命令提示符cmd的几种方法 目录 利用python语言实现调用内部命令-命令提示符cmd的几种方法 T1. ...
- JAVA中的八种基本类型
一.JAVA中的八种基本类型 1.数字类型(6种) ①byte: 占的位数:byte数据类型占八位: 最小值为:-128(-2^7): 最大值为:127(2^7-1): 默认值为:0: 作 ...
最新文章
- java property异常_Java常见的异常和解决的办法
- Python学习笔记一简介及安装配置
- Spring对事务管理的支持的发展历程--转
- mysql主键创建非聚集索引_什么是聚集索引,非聚集索引,索引覆盖,回表,索引下推...
- VIJOS 1052贾老二算算术 (高斯消元)
- .NET Framework总结二
- HDC2020开发者大会鸿蒙,鸿蒙2.0来了!华为开发者大会HDC 2020宣布
- 自适应对比度增强(ACE)算法原理及实现
- 广度优先搜索(啊哈算法)
- WY-2000B空气质量检测系统
- 计算机文件夹操作教案,文件文件和文件夹教案
- java环境变量配置 JDK环境变量
- 瞬息万变的技术圈与焦虑的技术人,进阶Android需要掌握的那几个关键技术!
- PostWoman(网页调试工具)
- 零知识证明的几个例子
- 【无标题】Deep AVPpred:人工智能驱动的病毒感染多肽药物的发现
- ubuntu20.4安装ROS2 Noetic Ninjem
- IE不能打开网页的原因及解决办法
- 多传感器数据融合技术如何应用在自动驾驶领域?
- Odoo10邮件收信发信配置2
热门文章
- 奖金福利高达20亿,华为太太太太太任性了!
- 图解 ElasticSearch 原理,太牛了
- 漫画:7种编程语言的学习曲线
- jeecgboot logback-spring.xml配置不生成新日志文件
- jboss7.1.安装配置
- SecureCRT上传bash: rz: command not found
- 华为云TaurusDB性能挑战赛-java赛题mvn编译时报错:不支持 diamond 运算符
- C++中面向对象的理解
- MATLAB GPU加速
- C++ 基于 Visual C++6.0 的 DLL 编程实现