Python中的函数(2)
一、实参和形参
def greet_user(username):
"""显示简单的问候语,且显示用户名"""
print("Hello!"+username) greet_user("Joker")
在上面代码中定义函数 greet_user()时,要求给变量username指定一个值。调用这个函数并提供这种信息(人名)时,它将打印带名字的问候语句。
在函数 greet_user() 的定义中,变量username 是一个形参---它表示函数完成其工作所需要的一项信息。在代码 greet_user('Joker') 中,值“Joker”
是一个实参。实参是在调用函数时传递给函数的信息。我们在调用函数时,需要将函数所需的信息放在括号内。在greet_user('Joker')中,将实参
‘Joker’ 传递给了函数greet_user() ,这个值被存储在形参username中。
二、位置实参
调用函数时,Python必须将函数调用中的每个实参都关联到函数定义中的形参。所以,实参与形参最简单的关联方式就是位置关联即实参顺序与形
参顺序一致,这种关联方式叫做位置实参。使用位置实参来调用函数时,如果实参的位置不正确,结果可能出乎意料。
三、关键字实参
def greet_user(username,age):
"""显示简单的问候语,且显示用户名"""
print("Hello!"+username+",you are " + str(age) + " years old!" ) greet_user(age=18,username="Joker")
console:

关键字实参 是传递给函数的 名称-值对。如上面的代码,在调用函数时,在括号内使用A=B的形式 给形参赋值,
A为形参名,B为实参,这样传递参数可以不用关心传递参数的顺序,只需关心名称与值是否对应即可。
四、形参默认值
编写函数时可以给每个形参指定默认值。
def greet_user(username,age=18):
"""显示简单的问候语,且显示用户名"""
print("Hello!"+username+",you are " + str(age) + " years old!" ) greet_user(username="Joker")
console:

我们给age 指定了默认值 18 ,我们调用时并没有传递age的实参,它也会默认给它18的实参,这就是age的默认值,
所以打印的信息还是和上面打印的信息一样。
五、避免实参错误
如果函数出现实参错误,traceback会指出问题出在什么地方,让我们可以去找到出错的地方进行更正。
def greet_user(username,age=18):
"""显示简单的问候语,且显示用户名"""
print("Hello!"+username+",you are " + str(age) + " years old!" ) greet_user()
console:

因为有Traceback的存在所以可以让我们可以更好的去找到代码中是哪里的错误。
还没有对象?要不要给你介绍,一款不错的狗粮。
Python中的函数(2)的更多相关文章
- Python中split()函数的用法及实际使用示例
Python中split()函数,通常用于将字符串切片并转换为列表. 一.函数说明: split():语法:str.split(str="",num=string.count(st ...
- Python中利用函数装饰器实现备忘功能
Python中利用函数装饰器实现备忘功能 这篇文章主要介绍了Python中利用函数装饰器实现备忘功能,同时还降到了利用装饰器来检查函数的递归.确保参数传递的正确,需要的朋友可以参考下 " ...
- python中range()函数的用法
python中range()函数可创建一个整数列表,一般用在for循环中. range()函数语法: range(start,stop[,step]) 参数说明: star: 计数从star开始.默认 ...
- Python 中的函数
学了 Python 中的数据类型,语句,接下来就来说一下 Python 中的函数,函数是结构化编程的核心.我们使用函数可以增加程序的可读性.自定义函数时使用关键字def 函数由多条语句组成.在定义函数 ...
- python中format函数
python中format函数用于字符串的格式化 通过关键字 1 print('{名字}今天{动作}'.format(名字='陈某某',动作='拍视频'))#通过关键字 2 grade = {'nam ...
- Python中readline()函数 去除换行符
从Python中readline()函数读取的一行内容中含有换行符\n,很多时候我们需要处理不含有换行符的字符串,此时就要去掉换行符\n. 方法是使用strip()函数. 例子如下: f = open ...
- Python中int()函数的用法浅析
int()是Python的一个内部函数 Python系统帮助里面是这么说的 >>> help(int) Help on class int in module __builti ...
- 【313】python 中 print 函数用法总结
参考:python 中 print 函数用法总结 参考:Python print() 函数(菜鸟教程) 参考:Python 3 print 函数用法总结 目录: 字符串和数值类型 变量 格式化输出 p ...
- python中filter函数
python中filter()函数 filter()函数是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断 ...
- Python中print()函数不换行的方法
一.让print()函数不换行 在Python中,print()函数默认是换行的.但是,在很多情况下,我们需要不换行的输出(比如在算法竞赛中).那么,在Python中如何做到这一点呢? 其实很简单.只 ...
随机推荐
- iOS WKWebView 加载进度条、导航栏返回&关闭 (Swift 4)
导航: 1.加载进度条 2.导航栏增加返回.关闭按钮 加载进度条 效果图 代码如下: self.progressView.trackTintColor = UIColor.white self.pro ...
- SpringMVC中Freemarker获取项目根目录
https://blog.csdn.net/whatlookingfor/article/details/51538995 在SpringMVC框架中使用Freemarker试图时,要获取根路径的方式 ...
- FZu Problem 2236 第十四个目标 (线段树 + dp)
题目链接: FZu Problem 2236 第十四个目标 题目描述: 给出一个n个数的序列,问这个序列内严格递增序列有多少个?不要求连续 解题思路: 又遇到了用线段树来优化dp的题目,线段树节点里 ...
- Codeforces 1107G(dp)
1.答案要取连续的区间疯狂暗示线段树. 2.外层枚举r,内层枚举l显然过于暴力. 3.考虑内层的优化.dp[i]:以第i位为结尾的答案(长度大于1的).dp[i] = max(第一种情况,第二种情况) ...
- Backbone学习记录(7)
事件委托 <form> <input type="text" class="txt"> <input type="but ...
- [转]Android 如何监听返回键,弹出一个退出对话框
本文转自:http://blog.csdn.net/sunnyfans/article/details/8094349 Android 如何监听返回键点击事件,并创建一个退出对话框, 防止自己写的应用 ...
- javaee 第11周
1.JPQL查询 JPQL全称Java Persistence Query Language 基于首次在EJB2.0中引入的EJB查询语言(EJB QL),Java持久化查询语言(JPQL)是一种可移 ...
- Java三大特性之继承
二.类的继承 1. 概念:从已有的类中派生出新的类,新的类能吸收已有类的属性和行为,并能扩展新的能力. 2. 一个不由任何类派生出来的类称为基类,一个派生类最近的上层类称为该类的父类,从某一类派生出来 ...
- ElasticSearch数据库同步插件logstash
1.下载和elasticsearch 相同版本的logstash. 2.进行解压后,进入bin下,新建一个文件mysql.conf,并输入 input { stdin{ }} output { std ...
- idea创建和部署tomcat项目
小编今天花费了一上午,参悟出了如何快速的在idea上面创建并部署一个属于自己的maven项目,很荣幸能将自己的开发经验推而广之,希望能够帮助到大家! 前言 小编参考博文: Intellij Idea ...