什么是函数
函数是对功能或者动作的封装
函数的语法和定义
define  定义
def  函数名():
        函数体
调用:
       函数名()
def yue():
    # 描述你的动作
    print(\"拿出手机\")
    print(\'打开陌陌\')
    print(\"找一个心仪的小姐姐\")
    print(\'有没有时间啊, 聊聊人生\')
    print(\"一起出来吃饭唱歌, 看电影\")
 
#调用函数
yue()
print(\"上班\")
print(\"上班\")
print(\"上班\")
yue()
 
print(yue) # <function yue at 0x00000000005B2E18>
结果:拿出手机
打开陌陌
找一个心仪的小姐姐
有没有时间啊, 聊聊人生
一起出来吃饭唱歌, 看电影
上班
上班
上班
拿出手机
打开陌陌
找一个心仪的小姐姐
有没有时间啊, 聊聊人生
一起出来吃饭唱歌, 看电影
关于函数的返回值
结论: 1.遇到return.次函数结束,函数后面的东西不会再执行
         2.teturn  返回值
def yue():
    # 描述你的动作
    print(\"拿出手机\")
    print(\'打开陌陌\')
    print(\"找一个心仪的小姐姐\")
    print(\'有没有时间啊, 聊聊人生\')
    print(\"一起出来吃饭唱歌, 看电影\")
    return \"小姐姐\" # 只能返回小姐姐, 其他的都不会执行
    return \"大妈\"
    return \"流浪汉\"
 
    # 得到一个结果
    # return \"小姐姐\", \"大妈\", \"流浪汉\" # 同时返回多个结果, 返回的是元组
 
ret = yue() # 这里调用的函数. 返回值就返回给这里
关于返回值:
      1.函数可以有返回值,也可以没有返回值 
      2.函数如果没有返回值,在函数最后执行完毕的时候会默认返回None
      3.在函数中只写了return,但没有返回值,会默认的返回None
      4.在函数中只写了return,return None 返回值是None
      5.当函数写了return 值1, 值2, 值3....  返回多个结果. 多个结果打包成tuple元组
      6.当程序执行到return, 函数结束执行
练习:写一个函数, 在函数内部. 要求用户输入两个数. 返回大的那个数
def func(): # fn func
    a = int(input(\"请输入第一个数:\"))
    b = int(input(\"请输入第二个数:\"))
    # if a > b:
    #     return a
    # else:
    #     return b
    # 三目运算
    c = a if a > b else b  # c装的是a, b中大数
    # 值1 if 条件 else 值2
    return c
 
ret = func()
print(ret)
函数的参数(部分)
()小括号表示调用
在括号内写的东西叫参数
在函数声明的位置,写的参数叫形参
在函数调用的地方,写的参数叫实参
把实参传给形参的过程叫做传参
在函数调用的时候,必须保证所有的形参都有值
def yue(tools): # 形参
    # 描述你的动作
    print(\"拿出手机\")
    print(\'打开%s\' % tools)
    print(\"找一个心仪的小姐姐\")
    print(\'有没有时间啊, 聊聊人生\')
    print(\"一起出来吃饭唱歌, 看电影\")
 
yue(\"微信\")  # 实参
yue(\"探探\")  # 实参
yue(\"陌陌\")  # 实参
关于实参
   1.位置参数,按照位置给形参传递信息
   2.关键字参数,按照形参声明的变量名进行传递
   3.混合参数,位置+ 关键字(规定)   关键字必须在位置参数的后面
关于形参
   1.位置参数,按照位置声明的变量
    2.默认值参数   默认值是在不给传参数的情况下启用
   3.当默认值和位置参数同事存在的时候,  规定:默认值必须放到最后
  所有带等号的,都上后面去
def chi(zhushi, fushi, tang, tiandian):
    print(\"主食:%s\" % zhushi)
    print(\"副食:%s\" % fushi)
    print(\"汤:%s\" % tang)
    print(\"甜点:%s\" % tiandian)
 
chi(\"锅包肉\", \"胡辣汤\", \"哈根达斯冰激凌火锅\",\"大米饭\")
chi(fushi=\"大米饭\", zhushi=\"锅包肉\", tiandian=\"哈根达斯\", tang=\"酸辣汤\")
chi(\"大米饭\", \"锅包肉\", tiandian=\"哈根达斯\", \"酸辣汤\") # 错误的. 关键字必须在位置参数后面
chi(\"大米饭\", \"锅包肉\", \"酸辣汤\", tiandian=\"哈根达斯\")
chi(\"大米饭\", \"锅包肉\", tiandian=\"哈根达斯\", tang=\"酸辣汤\")
 
open() # 调用函数
 
收藏 打印