Python 函数参数类型大全(非常全!!!)

Python 函数参数类型大全(非常全!!!)

1、在python编写程序里面具有函数文档,它的主要作用是为了让别人可以更好的理解你的函数,所以这是一个好习惯,访问函数文档的方式是:

MyFunction.__doc__

2、python编写程序函数的时候具有两类参数:

形式参数(形参)及其实际参数(实参)。

跟绝大部分编程语言一样,形参指的是函数创建和定义过程中小括号里的参数,而实参指的是函数在调用过程中传递进去的参数。

3、关键字参数,是指函数在调用的时候,带上参数的名字去指定具体调用的是哪个参数,从而可以不用按照参数的顺序调用函数,例如:

>>>
def SaySome(name, words):

print(name + ‘->‘ + words)

>>>
SaySome(words=‘改变世界!‘, name=‘鱼‘)

4、对于print这个BIF 具有以下几个默认的参数:

help(print)

Help on
built-in function print in module builtins:

print(...)

print(value,
..., sep=‘ ‘, end=‘\n‘, file=sys.stdout, flush=False)

Prints the
values to a stream, or to sys.stdout by default.

Optional
keyword arguments:

file:  a
file-like object (stream); defaults to the current sys.stdout.

# 文件类型对象,默认是sys.stdout(标准输出流)

sep: 
 string inserted between values, default a space.

# 第一个参数如果有多个值(第一个参数是收集参数),各个值之间默认用空格(space)隔开

end: 
 string appended after the last value, default a newline.

# 打印最后一个值之后默认参数一个新行标识符(‘\n’)

flush:
whether to forcibly flush the stream.

# 是否强制刷新流

5、默认参数和关键字参数表面最大的区别是什么?

关键字参数是在函数调用的时候,通过参数名制定需要赋值的参数,这样做就不怕因为搞不清参数的顺序而导致函数调用出错。而默认参数是在参数定义的过程中,为形参赋初值,当函数调用的时候,不传递实参,则默认使用形参的初始值代替。

6、 收集参数(可变参数)

对于python程序里面的收集参数,它是一类可变的参数,它一般是在定义函数不确定该函数具有多少个参数的时会用到,其具体的定义格式如下:

def my function(*canshu,a,b……)

上面函数的参数里面,canshu 变量就是一种收集参数,后面的a,b为一般的形参,收集参数的写法类似于C语言里面的指针,可以表示多个变量。

例如程序1:

>>> def test(*params):

print("参数的长度是:",len(params))

print("第二个参数是:",params[1])

test(1,"xiaojiay",3.14,2,3,4,5,6,7)

参数的长度是: 9

第二个参数是: xiaojiay

原文地址:https://www.cnblogs.com/Yanjy-OnlyOne/p/9847577.html

时间: 2024-10-28 16:05:48

Python 函数参数类型大全(非常全!!!)的相关文章

python函数参数类型及其顺序

根据inspect模块官文文档中关于函数参数类型的相关说明,python函数参数共有五种类型,按顺序分别为:POSITIONAL_ONLY.POSITIONAL_OR_KEYWORD.VAR_POSITIONAL.KEYWORD_ONLY.VAR_KEYWORD.如图: POSITIONAL_ONLY:参数值必须以位置参数的形式传递.python没有明确的语法来定义POSITIONAL_ONLY类型的参数,但很多内建或扩展模块的函数中常常会接收这种参数类型,实际使用中不多见,这里暂不考虑. PO

python函数参数类型:位置参数、默认参数、动态参数

1.位置参数:调用函数的时候传的参数,参数默认按顺序赋值,如果是指定那个参数赋值,不关注顺序.指定参数a=1,b=2 就在函数体内a=1,b=2 2.默认参数:在定义函数的时候,给某个参数设置默认值 3.动态参数:*args 调用函数是可以传入任意个参数或者不传,传递到函数内部会把这些函数存入到一个元组 4.一个函数有位置参数,默认参数时位置参数必须在默认参数前面 原文地址:https://www.cnblogs.com/mo-nian/p/11841066.html

python函数参数改变问题

python函数参数改不改变的问题 前几天在做项目的过程中发现了一个问题,向函数中传入一个list,在函数体内将其赋值给list,对list1操作后发现list也发生了变化,啊 ! 出乎意料.查了一下原因,原来python里有可变对象和不可变对象之分.只有传入的是不可变对象时,值才不发生改变,若是可变对象,充当函数参数时要注意了. 不可变对象:Number ,String , Tuple,bool 可变对象: List , Set , Dictionary是可以改变内部的元素 下面总结一下: 先

VBA自定义函数参数类型不符的错误

作者:iamlaosong 1.问题提出 编程中发现一个问题,系统总是提示编译错误,ByRef 参数类型不符, 可实际上参数定义没问题,原因在哪儿呢? 2.问题环境 假定函数定义如下: Function get_kind(addr As String) As Integer ...... End Function 调用过程: Sub check_address() Dim addr, new_addr(10000) As String ...... addr = new_addr(i) ....

c++函数参数类型-值,指针,引用

    以" 值传递"方式向函数传递参数 在编写个人函数的时候,你将会受到C++中的一条基本的原则的限制:在默认的情况下,变量只能以值传递的方式传递给函数.这句话的意思是:被传递到函数的只是变量的值,永远不是变量的本身. 例如: void changeValue(int originalValue,int newValue){     originalValue = newValue;   }      int main(){     int myNum=20;     changeV

Python函数参数默认值的陷阱和原理深究(转)

add by zhj: 在Python文档中清楚的说明了默认参数是怎么工作的,如下 "Default parameter values are evaluated when the function definition is executed. This means that the expression is evaluated once, when the function is defined, and that the same “pre-computed” value is used

C++_第七章函数的基本知识_求阶乘的子函数_ 函数参数类型为数组_ 求数组内所有元素和、部分元素和的方法_实现了先从键盘输入到一个数组中,再用for循环取读出数组中的元素 for循环也可以用break来结束循环的

/* 第七章函数的基本知识 */ /*01)c++对于返回值有一定的限制:可以是常量.变量.指针.结构对象或表达式,但不可以是数组02)c++返回数组的方法:将数组作为结构会对象组成部分来返回03)函数遇到return则结束该函数04)如果一个函数的两房额参数类型相同,则必须分别制定每个参数的类型,而不能像声明常规变量那样,将声明组合在一起05)*/ //本代码注意double类型的写法以及double和int类型数据的转换 1 #include <iostream> 2 3 void che

python 函数参数的传递(参数带星号的说明) 元组传递 字典传递

python 函数参数的传递(参数带星号的说明) 元组传递 字典传递 *arg 代表的是arg元祖,**kwd代表的是kwd名称的字典. 那函数传参数或是使用参数的时候,什么时候带*号什么时候不带*号呢?我这点总是理解不上来,或者说有点混乱.参考下面几个小函数,来理解下 >>> def a(*x): print (x) >>> def b(x): print(x) >>> def c(*x): print(*x) >>> x = (1

【Python】函数参数类型及用法

 一.函数的参数类型 def hs(a1,a2,a3,...): ****statements 其中a1,a2,a3是函数的参数,函数的参数类型可分为:必须参数.默认参数.可变参数(不定长参数).关键字参数.组合参数,总共5种. 二.必须参数 其实我们之前举得例子就是必须参数,以下例子必须参数: >>>def hello(str): .... print('必须参数是:',str) >>>hello('hello,world') 我们可以看到在函数hello中,str作