PYTHON学习0023:函数---参数----2019-6-17

参数作用:可以让函数更灵活,不只能做死的动作,还可以根据调用时传参的不同来决定函数内部执行流程。

一、默认参数:

以上函数中,countr这个形式参数,传入的实际参数基本都是“CN”,就像我们在网站上注册,像国籍这种信息,用户不填写,默认就会是中国。就是通过默认参数实现的。
那么把这个country变成默认参数很简单,写成如下即可:

注意:默认参数必须放在位置参数最后面,否则影响传值。

二、关键参数:
1、定义:正常情况下,给函数传参数要按顺序,不想按顺序就可以用关键参数,只需指定参数名即可。(指定了参数名的参数就叫关键参数),但记住一个要求就是,关键参数必须在位置参数(以位置顺序确定对应关系的参数)之后。比如下函数:

可以这样调用:

但不能这样调用:

也不能这样调用:

三、非固定参数:
1、如果形式参数中出现了*号,则传递的参数就可以不再是固定个数,且会把传的所有参数打包成元祖形式。
比如:
m = ["a","b","c","d","e"]

def stu(*name):
for i in name:
print("报警发送给",i)

stu(m) #这里加号表示吧m列表里每一个元素当做传输传递,不加号就表示吧整个列表当做一个参数传递。当然也可以分别传递参数进去。
输出为:
报警发送给 a
报警发送给 b
报警发送给 c
报警发送给 d
报警发送给 e
注意:这种非固定参数必须位置参数后面。
2、如果参数前加2个**号,则在传递参数时,可以接收字典形式传参或者未定义的关键字参数传递。

比如:
m = ["a","b","c","d","e"]

d={"degree":"primary","age":22}

def stu(msg,*name,**args):

    print(msg,name,args)

stu("回来",*m,*d)
stu("回来",
m,a=2,b=3)
输出结果为:

回来 (‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘) {‘degree‘: ‘primary‘, ‘age‘: 22}
回来 (‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘) {‘a‘: 2, ‘b‘: 3}

原文地址:https://blog.51cto.com/13543767/2410226

时间: 2024-08-28 15:30:10

PYTHON学习0023:函数---参数----2019-6-17的相关文章

python学习日常-函数参数与递归

先说递归:因为原理简单,但是要用灵活运用的话,是非常困难的. 递归的原理就是在函数内部调用函数自己,以实现循环的目的, 比如一个阶乘函数def fn(n): if n==1: return n; else : return fn(n-1)*n; 还有一种尾递归的说法,原因是递归非常容易栈溢出,所以在返回值中不应该出现剩函数本身, 上面的阶乘就可以化为 def fn(n,product): if n==1: return product; else : return fn(n-1,n*produc

python学习 04 函数参数

1.参数可以传递元组,但是要加* 2.参数可以传递字典,但是要加**

python基础教程函数参数

python里有很多的内置函数给我们的工作带来了很多发便利,在我们实现某些功能或者优化代码的时候,可以自己定义一个函数,同时我们在定义一个类的时候也会用到函数的一些知识去构造一个方法,这里就涉及到一些关于函数的基础知识和函数传参的知识. 一.函数的相关介绍 1.函数定义:函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. 函数特性: 减少重复代码 使程序变的可扩展 使程序变得易维护 2.函数的定义示例 定义一个函数要使用def语句,依次写出函数名.括

Python中的函数参数

在讲函数参数之前还是简单的讲一下Python中的可变对象与不可变对象. 一.可变对象与不可变对象 在Python中,一切皆对象,python中不存在所谓的传值调用,一切传递的都是对象的引用,也可以认为是传址.所谓可变对象是指,对象的内容可变,而不可变对象是指对象内容不可变(即在其创建后,值不能改变,但可创建新的对象并以同一变量名对其赋值,而旧的对象会被清理掉,这在python里叫对象的垃圾收集).不可变(immutable):int.字符串(string).float.(数值型number).元

Python学习之--函数

Function,函数,主要是为了:1提高代码的复用程度,2将程序模块化. 定义函数 在Python中,使用def 用来定义函数,一般函数的定义如下: def name(arg1,arg2,....): statements return value 其中,return 用来返回函数执行的结果 一个简单的sample如下: >>> def times(x,y): ... return x*y ... >>> times(5,2) 10 >>> 函数执行

Python学习笔记——函数

1.定义函数: 在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回.如果一个函数什么也不做,需要用到pass语句(C,Java中可以直接不写代码,python必须要写pass占位,否则报错). def my_abs(x): if x >= 0: return x else: return -x 2.参数检查: isinstance(object, classinfo),其第一个参数为对象,第二

python 学习笔记 函数和类

与java类似 python的函数也是出于可以复用才使用的 如果一段代码没有复用的价值就可以不用函数 一般的函数可以定义成这样: def func(a,b=123,*arg,**args): for x in arg:#arg是一个list print x for x,y in args.items():#args是一个dict print x,y print 'a:',a print 'b:',b func(1,1,2,3,4,c=1,d=2) 结果: 2 3 4 c 1 d 2 a: 1 b

Python学习路线分享(2019经典版)

Python 是Web 开发.游戏脚本.计算机视觉.物联网管理和机器人开发的主流语言之一,随着Python用户可以预期的增长,它还有机会在多个领域里登顶.Python学习路线(2019经典版)分享给你.阶段一是Python语言(用时5周,包括基础语法.面向对象.高级课程.经典课程):阶段二是Linux初级(用时1周,包括Linux系统基本指令.常用服务安装):阶段三是Web开发之Diango(5周+2周前端+3周diango):阶段四是Web开发之Flask(用时2周):阶段五是Web框架之To

Python学习之函数篇

python查看对象,函数帮助文档:.__doc__,例:str.split.__doc__ 查看详细对象,函数文档:help(),例:help(str.split) 函数参数可设置默认值 如果不能提前确定参数个数,可以采用可变参数,因此,python不必支持函数的重载,更简单,更方便的实现重载 函数示例: 求最大公约数.最小公倍数函数封装 原文地址:https://www.cnblogs.com/baobao2201128470/p/10884153.html

Python 学习笔记-函数(一)传参

首先明确字符串,数字和元组作为函数参数时是不可变的,但是列表和字典等数据结构却是可以改变的. def change(n):     n[0]='apple' names=['banana','pear'] n=names[:] change(n) print names,n ['banana', 'pear'] ['apple', 'pear'] 修改后让原始列表保持不变. 假设现在要编写一个存储姓名, 年龄,部门并能够根据这三样进行联系人查询的程序: 因为是查询多个元素,首先想到了字典这种数据