Python的函数返回值和参数
一、函数返回值
*返回多个值
Python的函数返回多值其实就是返回一个tuple。但是,在语法上,返回一个tuple可以省略括号,而多个变量可以同时接收一个tuple,按位置赋给对应的值。
*没有返回值
函数执行完毕也没有return语句时,自动return None。
二、函数默认参数
问题1:为什么默认参数不能放在必选参数前面
问题2:
原因解释如下:
Python函数在定义的时候,默认参数L的值就被计算出来了,即[],因为默认参数L也是一个变量,它指向对象[],每次调用该函数,如果改变了L的内容,则下次调用时,默认参数的内容就变了,不再是函数定义时的[]了。
所以,定义默认参数要牢记一点:默认参数必须指向不变对象!
三、可变参数
在Python函数中,还可以定义可变参数。顾名思义,可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个。
方法1:传入tuple或者list
方法2:把参数改成可变参数
定义可变参数和定义list或tuple参数相比,仅仅在参数前面加了一个*号。在函数内部,参数numbers接收到的是一个tuple,因此,函数代码完全不变。但是,调用该函数时,可以传入任意个参数,包括0个参数。
总之,可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple。
四、关键字参数
关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict。
关键字参数有什么用?它可以扩展函数的功能。比如,在person函数里,我们保证能接收到name和age这两个参数,但是,如果调用者愿意提供更多的参数,我们也能收到。试想你正在做一个用户注册的功能,除了用户名和年龄是必填项外,其他都是可选项,利用关键字参数来定义这个函数就能满足注册的需求。
五、参数小结
默认参数一定要用不可变对象,如果是可变对象,运行会有逻辑错误!要注意定义可变参数和关键字参数的语法:
*args是可变参数,args接收的是一个tuple;
**kw是关键字参数,kw接收的是一个dict。
以及调用函数时如何传入可变参数和关键字参数的语法:
可变参数既可以直接传入:func(1, 2, 3),又可以先组装list或tuple,再通过args传入:func((1, 2, 3));
关键字参数既可以直接传入:func(a=1, b=2),又可以先组装dict,再通过kw传入:func({‘a’: 1, ‘b’: 2})。
了解更多分析及数据抓取可查看:
http://cloud.yisurvey.com:9081/html/529942a8-212c-4c85-9c92-9c56beb4a299.html?ly=csdn
本文转载自互联网、仅供学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请联系我们删除处理。
特别说明:本文旨在技术交流,请勿将涉及的技术用于非法用途,否则一切后果自负。如果您觉得我们侵犯了您的合法权益,请联系我们予以处理。
Python的函数返回值和参数相关推荐
- Python return函数返回值详解
Python return函数返回值详解 到目前为止,我们创建的函数都只是对传入的数据进行了处理,处理完了就结束.但实际上,在某些场景中,我们还需函数将处理的结果反馈回来,就好像主管向下级员工下达命令 ...
- Python return函数返回值(详解)
文章目录 Python return函数返回值 Python return函数返回值 到目前为止,我们创建的函数都只是对传入的数据进行了处理,处理完了就结束.但实际上,在某些场景中,我们还需函数将处理 ...
- C++函数的定义、函数返回值和参数类型、函数重载、重载函数等。
一.函数 1.何为函数? 能够执行一个功能的可复用的用大括号括起来的代码块: 2.按照函数的拥有者进行分类: 预定义函数:头文件中提供的预定义函数(内置):用户可以直接调用: 自定义函数:用户根据需要 ...
- python函数返回值和参数_python_函数参数和返回值
01.函数参数和返回值的作用 函数:封装功能独立的代码,在需要时通过函数名调用,可以直接访问全局变量 参数:外界希望在函数内部处理数据 返回值:向外界报告函数的执行结果 定义函数时, 是否接受参数,或 ...
- python sort函数返回值_lambda函数与箭头函数在集合内置函数应用中的对照学习
Python语言中有一个定义轻量级规则的lambda函数,其语法格式为: Lambda 参数列表:返回值表达式 简单的例子如:定义func=lambda x,y:x+y,则调用func(10,20)的 ...
- python sort函数返回值_python中 sort方法 和sorted函数
sort和sorted在python中常用语列表(或类列表)的排序,但是在python中有所区别. 他们的唯一的共同点恐怕就是都可以对列表排序,区别: 1. sorted是python的内置函数,可以 ...
- python open函数返回值_open函数 · intermediate-python · 看云
# open函数 # `open`函数 [open](http://docs.python.org/dev/library/functions.html#open) 函数可以打开一个文件.超级简单吧? ...
- python read函数返回值_python read()方法定义及使用(实例解析)
今天这篇文章我们来了解一下pythonread方法,不知道没什么关系.因为今天讲的就是python之中的read()方法,以及知晓read是什么意思,所以今天我们在今天的文章之中来了解一下吧. 概述 ...
- if python 判断函数返回值_Python函数的返回值和作用域
函数的返回值和作用域 1.返回值 def guess(x): if x > 3: return "> 3" else: return "<= 3&quo ...
最新文章
- debian10 ftp简单搭建
- 什么是微分?什么是导数?如何利用微分-导数方程求导数?
- ubuntu 20.04 设置网关_如何把Ubuntu升级到Ubuntu 20.04 LTS 最新版本
- ftp服务器文件查找功能,ftp服务器端查找功能
- Ajax入门总结--jquery实现Ajax
- php读取ds18b20,DS18B20_单总线协议
- android logcat 根据包名过滤,adb logcat通过包名过滤(dos命令find后跟变量)
- ndows10同时打印多份文档,Windows10如何同时重命名多个文件
- JavaScript 循环
- android studio运行模拟器报错请求超时_GDA关于android脱壳的问题说明
- java中printreader类_Java基本字符流输入输出类的使用
- 基于JAVA+SpringMVC+Mybatis+MYSQL的课程教学辅助系统
- Qt学习之路(37): Qt容器类之关联存储容器
- python new方法_Python中的__new__()方法的使用
- cvMatchTemplate() 模板匹配
- stm32f103c8t6开发版点亮oled屏幕工程文件_OLED液晶屏如何显示中文呢
- 心知天气html,esp8266初级入门实用教程一之访问心知天气读取实时天气数据
- spyder缩进快捷键
- 解决 XCUITest iproxy exited with code 208
- 中科院信工所经验_信工所六室面试经历