python day09--定义函数
一、函数的定义
def 函数名(参数):
函数体
来我们来定义⼀一个约x功能:
def yue():
print("拿出⼿手机")
print("打开陌陌")
print("找个漂亮的妹⼦子")
print("问她, 约不不约啊?")
print("oK. ⾛走你!")
函数的调用:
# 调用yue()函数
yue()
结果:
拿出⼿手机
打开陌陌
找个漂亮的妹⼦子
问她, 约不不约啊?
oK. ⾛走你!
三、函数的返回
1. 函数中遇到return, 此函数结束, 不再继续执⾏
def yue():
print("约你")
print("约我")
print("约他")
return
print("约谁呀") # 这句句话不不会被执⾏行行
yue()
2.返回结果
def yue():
print("约你")
print("约我")
print("约他")
return "美⼥一枚"
girl = yue()
print(girl) # 美⼥一枚
2.1返回多个结果
def yue():
print("约你")
print("约我")
print("约他")
return "美⼥一枚", "萝莉⼀一枚"
girl = yue()
print(type(girl)) # tuple元组形式
3.总结
1. 遇到return. 此函数结束, 函数后⾯面的东⻄西将不会再执⾏。
2. return 返回值
关于返回值:
如果return什什么都不写 或者 干脆不写return .那么返回的就是None
如果return后面写了了一个值. 则调用者可以接收一个结果
如果return后⾯面写了多个结果, 则调⽤用者可以接收一个tuple, 调⽤用者可以直接解构成
多个变量
OK. 完美. 可以得到结果了. 但是我们的约的⽅式是不是有点⼉儿问题呢?, 陌陌现在还能约到
么? 约不到了吧. 该换探探了了. 那过两天探探也死掉了了呢? 是不是还会有⼀一个替代品. 那你想.
有一个替代的. 你就需要去改一下代码. 是不是不太合适了了. 最好的⽅方式是不是想⽤用什什么约就
⽤用什么约? ok. 我们可以通过函数的参数来给函数传递⼀一些信息.
四、函数的参数
1.形参
写在函数声明的位置的变量叫形参. 形式上的⼀一个完整. 表示这个函数需要xxx
def yue(chat):#chat是形参
print("拿出⼿手机")
print("打开"+chat)
print("找个漂亮的妹⼦子")
print("约不不约")
1.1形参里的位置参数按照位置来赋值
def yue(chat, address, age):
print("拿出⼿手机")
print("打开"+chat)
print("找个"+address+"附近漂亮的"+str(age)+"岁妹⼦子")
print("约不不约")
1.2默认参数
在函数声明的时候, 就可以给出函数参数的默认值. 在调用的时候可以
给出具体的值, 也可以不给值, 使用默认值.
def stu_info(name, age, sex='男'):
print("录⼊入学⽣生信息")
print(name, age, sex)
print("录⼊入完毕")
注意, 必须先声明位置参数, 才能声明默认值参数.
2.实参
2.1在函数调用的时候给函数传递的值. 叫实参, 实际执行的时候给函数传递的信息.
def yue(chat): # chat 形参
print("拿出⼿手机")
print("打开"+chat)
print("找个漂亮的妹⼦子")
print("约不不约") yue("陌陌") # 实参
2.2位置参数,在输入参数是必须按顺序来
def yue(chat, address, age): # 形参
print("拿出⼿手机")
print("打开"+chat)
print("找个"+address+"附近漂亮的"+str(age)+"岁妹⼦子")
print("约不不约")
yue("微信", "北北京", 18) # 实参
2.3关键字参数,在输入时直接说明参数等于什么。
def yue(chat, address, age):
print("拿出⼿手机")
print("打开"+chat)
print("找个"+address+"附近漂亮的"+str(age)+"岁妹⼦子")
print("约不不约")
yue(chat="微信", age=18, address="北京") # 关键字参数.
2.4混合参数,可以多种参数一起用,位置参数必须在关键字参数前⾯。
yue("微信", age=18, address="上海海") # 正确.第一个位置赋值给chat, 后面的参数开始指定关键字.
python day09--定义函数的更多相关文章
- 编程入门python之定义函数【转】
编程入门python之定义函数 零基础学编程by学哥 2017-02-06 10:51 今天讲python函数. 输入参数求三角形或圆形或长方形的面积 先输入1个参数:形状类型 1=三角形 2=圆形 ...
- Python 函数调用&定义函数&函数参数
一.函数调用 在python中内置了很多函数,我们可以直接调用 .想要调用函数首先要知道函数的名称及包含的参数,还可以通过查看python官方的文档:https://docs.python.org/3 ...
- python之定义函数
1.定义函数和参数检查 通过def语句定义一个函数,自己定义的函数,当参数个数不对时,python解释器可以抛出TypeError,但是当参数类型不对时,无法抛出TypeError,为此可以通过isi ...
- Python中定义函数时参数有默认值的小陷阱
在定义函数的时候,如果函数的参数有默认值,有两种类型的参数,一种是整数,字符串这种不可变类型,另一种是列表这种可变类型,对于第一种情况没有什么特殊的地方,但是对于可变类型,有一个微妙的小陷阱. 可变类 ...
- python中定义函数和参数的传递问题
作者:達聞西链接:https://zhuanlan.zhihu.com/p/24162430来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 5.2.4 函数.生成器和类 ...
- Python基础笔记:函数:调用函数、定义函数、函数的参数、递归函数
一.定义一个求二元一次方程的根的函数 #Sublime Text import math def ee(a,b,c): delta=b*b-4*a*c if delta<0: return 'n ...
- Python学习笔记 - 函数参数
>>> def power(x): ... return x * x ... >>> power(5) 25 >>> def power(x, n ...
- Python学习之函数参数
上一节,我们学习了Python中是如何定义和调用函数且如何得到返回值的.在调用函数时,有的函数需要参数来启动函数,有的则无需参数.这一节我们来介绍Python中有哪些参数类型. 位置参数 在调用函数时 ...
- Python:笔记(2)——函数与模块
Python:笔记(2)——函数与模块 Python函数 关于函数 1.我们可以使用Help来查看函数的帮助信息 2.调用函数的时候,如果传入的参数数量或者类型不符合均会报错. 3.函数名其实就是一个 ...
- 01.Python基础-5.函数
1 函数的介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 内置函数 自定义函数 2 函数的定义和调用 2.1 函数的定义和调用 定义 def 函数名([参数]): 代码块 [ ...
随机推荐
- git merge和git rebase的区别
git merge是用来合并两个分支的.# 将b分支合并到当前分支git merge b git cherry-pick可以选择某一个分支中的一个或几个commit(s)来进行操作.例如,假设我 们有 ...
- 安卓——Activity生命周期、
在xml 设计页面添加标签 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmln ...
- SET构造函数
set<int,greater<int>> S; 可以在第二个参数位置设置比较模板,效果和sort类似,less表示升序,greater表示降序.这样做的好处是为了方便应对题目 ...
- visual studio利用 indent guides 格式化代码 添加竖线
点击 Visual Studio 2013 工具—扩展和更新—联机 然后输入indent guides 自动搜索出来这个插件(如图).注:Visual Studio 2010需要自己在网上下载安装. ...
- springboot activiti 配置项详解
asyncExecutorEnabled属性设置设置true后将代替那些老的Job executorspring.activiti.async-executor-enabled=false sprin ...
- Python----list&元祖常用方法总结
一.创建列表,把使用逗号分隔的数据用中括号[ ]括起来即为一个列表,列表也叫数组.list.array:列表里面也可以再套列表,一个列表里面套一个列表,叫二维数组:一个里面套一个列表,里面的列表再套 ...
- 一步步构建iOS路由
什么是移动端路由层: 路由层的概念在服务端是指url请求的分层解析,将一个请求分发到对应的应用处理程序.移动端的路由层指的是将诸如App内页面访问.H5与App访问的访问请求和App间的访问请求,进行 ...
- linux系统管理 计划任务
一次性计划任务 命令: at 语法: at [-f 文件名] 时间 绝对计时方法 HH:MM yyyy-MM-dd 相对计时方法 now + n minutes now+n hours now + n ...
- 微信公众号 access_token 没有过期 却失效
最近在开发微信项目的时候 access_token 缓存到 redis里面的,明明在两个小时的有效期内 微信却提示 "errcode":40001,"errmsg& ...
- Uboot代码分析
(1)确定链接脚本文件:uboot根目录下Makefile中的LDSCRIPT宏值,就是指定链接脚本(如:arch/arm/cpu/u-boot.lds)路径用的.(2)从脚本文件找入口: 在链接脚本 ...