一 函数的定义:
对功能和动作的封装和定义.
二 函数的格式:
def 函数名(形参列表): 函数名就是变量名:规则就是变量的规则
函数体(return)
ret = 函数名(实参列表)
三 函数的返回值:
函数结束执行后给调用方的结果
return,只要执行到return 函数的本次调用就会被停止
1.如果函数不写return, 没有返回值。 接收到的是None
2.写了return。 return后面什么都不写或者return后面的是None. 返回None
3.return 一个值。 返回一个结果
4.return 值,值,值 返回多个值。结果是元组
列子: 下面里面可以有return,也可没有,有的话只能写一个return,
def learn ():
print("学习物理")
print("学习化学")
# return "成绩50" #打印score 此时不会有 学习生物和学习语文
print("学习生物")
print("学习语文")
# return "成绩90分","成绩91","成绩95" #此时返回的score为一个元祖("成绩90分","成绩91","成绩95")
return #,可以不跟值,此时返回为None
score = learn()
# learn()
print(score)
四函数的参数:
参数: 函数在调用的时候给函数传递的信息 形参: 在函数声明的位置的变量
实参: 在函数调用的时候给出的具体的值 传参: 在函数调用的过程中把实参赋值给形参的过程.
实参:
1. 位置参数. 按照位置给形参传递信息
2. 关键字参数. 按照形参的名字给参数传递信息
3. 混合参数. 先位置后关键字
形参:
1. 位置参数
2. 默认值参数, 必须写在位置参数后面
3. 动态参数
例如:
def yue(tools): # 在函数声明的位置。 给出来的参数叫形参。 形式上的一个参数. 用一个变量来表示
print("拿出手机")
print("打开%s" % tools)
print("找一找心怡的对方.")
print("出来吃吃饭")
print("唱唱歌")
print("跳跳广场舞")
# 在函数调用的时候。把实参的值赋值给形参的过程叫传参
yue("微信") # 在函数调用的地方给出的具体的值。 参数叫实参. 实际参数
yue("陌陌")
yue("探探")
1实参的列子:
1.位置参数: #按照位置给形参赋值
def food(good_food,nogood_food,drink):
print("我要吃",good_food,nogood_food,drink)
food("木须肉盖饭","粥","可口可乐") #我要吃 木须肉盖饭 粥 可口可乐
2.关键字参数: 按照形参的名字给参数赋值
def food(good_food,nogood_food,drink):
print("我要吃",good_food,nogood_food,drink)
food(good_food="木须肉盖饭",drink="可口可乐",nogood_food="粥")#我要吃 木须肉盖饭 粥 可口可乐
3.混合参数:#位置参数必须放在前面,关键字参数放在后面
def food(good_food,nogood_food,drink):
print("我要吃",good_food,nogood_food,drink)
food(drink="木须肉盖饭","可口可乐","粥") #错误,drink 必须放在后面
2形参的列子:
1.位置参数: 按照位置声明参数,和实参一样
def information(name,age,sex):
print(name,age,sex)
information("王以太","29","女")
information("张甲乙","1","女")
information("张旭","29","男")
information("妈妈","43","女")
2.默认值参数: 给参数传递值的时候, 不给值, 默认值起作用. 保证你至少有个值能用.给值得话,默认值不起作用.顺序: 位置参数必须放在前面。 默认值参数必须放在后面.
def information(name,age,sex="女"):
print(name,age,sex)
information("王以太","29",)
information("张甲乙","1",)
information("张旭","29","男")
information("妈妈","43",) 此时的结果和1位置参数的结果一致,使用于大多情况一致的输入,特殊的单独处理即可.
3.动态参数: 动态参数,用于参数不确定时用.
格式: def fun (*args)
fun(args)
列子1.假如参数不确定时,如下的列子,每人饭量不一样,吃的种类不一样,此时用到动态传参.
def fun(*food): #*表示的是不定参数,可以传递任意个信息,参数名称还是food,且接收到的信息为元祖()
print("我要吃",food)
fun("米饭") #*表示位置参数的动态传参 结果为我要吃 ('米饭',)
fun("一锅米饭","一箱辣条","一桶方便面","可口可乐")#我要吃 ('一锅米饭', '一箱辣条', '一桶方便面', '可口可乐')
fun ("一碗米饭","辣条","雪碧") #结果为我要吃 ('一碗米饭', '辣条', '雪碧')
列子2.动态参数必须在位置参数后.
def fun (*food,a,b):
print("我要吃",food,a,b)
fun("苹果","梨子","香蕉") #此时程序会报错,全被food接收了,a和b永远接收不到参数.
def fun (a,b,*food):
print("我要吃",a,b,food)
fun("苹果","梨子","香蕉","橘子") #我要吃 苹果 梨子 ('香蕉', '橘子')

python 之函数的更多相关文章

  1. python的函数

    函数一词起源于数学,但是在编程中的函数和数学中的有很大不同.编程中的函数式组织好的,可重复使用的,用于实现单一功能或相关联功能的代码块. 我们在学习过程中已经使用过一些python内建的函数,如pri ...

  2. python strip()函数 介绍

    python strip()函数 介绍,需要的朋友可以参考一下   函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除 ...

  3. python split()函数

    Python split()函数 函数原型: split([char][, num])默认用空格分割,参数char为分割字符,num为分割次数,即分割成(num+1)个字符串 1.按某一个字符分割. ...

  4. Python数学函数

    1.Python数学函数 1.abs(x):取绝对值,内建函数 2.math.ceil(x):向上取整,在math模块中 3.cmp(x,y):如果 x < y ,返回-1:如果 x == y ...

  5. Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

  6. Python之函数与变量

    本节内容 函数介绍及其作用 函数的定义与调用 函数的参数说明 全局变量与局部变量 值传递和引用传递 一.函数的介绍及其作用 编程语言中的函数与数学中的函数是有区别的:数学中的函数有参数(输入),就会有 ...

  7. Python基础-函数篇

    本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8.内置函数  函数与函数式编程 1.面向对象: 华山派-- ...

  8. 【C++实现python字符串函数库】strip、lstrip、rstrip方法

    [C++实现python字符串函数库]strip.lstrip.rstrip方法 这三个方法用于删除字符串首尾处指定的字符,默认删除空白符(包括'\n', '\r', '\t', ' '). s.st ...

  9. 【C++实现python字符串函数库】二:字符串匹配函数startswith与endswith

    [C++实现python字符串函数库]字符串匹配函数startswith与endswith 这两个函数用于匹配字符串的开头或末尾,判断是否包含另一个字符串,它们返回bool值.startswith() ...

  10. 【C++实现python字符串函数库】一:分割函数:split、rsplit

    [C++实现python字符串函数库]split()与rsplit()方法 前言 本系列文章将介绍python提供的字符串函数,并尝试使用C++来实现这些函数.这些C++函数在这里做单独的分析,最后我 ...

随机推荐

  1. Colorbox - a jQuery lightbox

    http://www.jacklmoore.com/colorbox/http://www.jacklmoore.com/colorbox/example5/ <script type=&quo ...

  2. shell 重启 tomcat 脚本

    #!/bin/sh # author hapday -- export TOMCAT_HOME=/usr/local/tomcat-pms tomcat_pid=$(ps -ef | grep ${T ...

  3. 让div跟按键走,基本键码

    ---恢复内容开始--- 想要快速的做这样一个简单效果,首先要明白它的原理; 样式设置的重点,就是要跟上次拖拽一样,给该元素绝对定位, 事件就是onkeydown,事件,通过判断键码,来执行: < ...

  4. mui使用技巧

    1.document.addEventListener('plusready', function(){ //console.log("所有plus api都应该在此事件发生后调用,否则会出 ...

  5. Microsoft BI - SSRS

    1. Shared Dataset 功能在 SQL Server 2008 R2 / 2012 / 2014 的下列三个版本中不支持,详情请参考此处: Express Edition with Adv ...

  6. keras 自定义 custom 函数

    转自: https://kexue.fm/archives/4493/,感谢分享! Keras是一个搭积木式的深度学习框架,用它可以很方便且直观地搭建一些常见的深度学习模型.在tensorflow出来 ...

  7. 自整定模糊PID算法的理论

    模糊控制系统的构成与与常规的反馈控制系统的主要区别在于控制器主要是由模糊化,模糊推理机和精确化三个功能模块和知识库(包括数据库和规则库)构成的.具体实现过程如下所示: (1)预处理: 输入数据往往是通 ...

  8. Matlab GUI保存图片

    % --- Executes on button press in pushbutton5. function pushbutton5_Callback(hObject, eventdata, han ...

  9. 学习spring mvc

    http://www.cnblogs.com/bigdataZJ/p/springmvc1.html

  10. Android学习——Fragment与Activity通信(二)

    接下来就要到Fragment向Activity传输数据了.主要的思路,就是在Fragment中创建一个回调接口,利用该回调接口实现Fragment向Activity传输数据的功能. 回调函数(接口) ...