欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

09 初识函数

程序员文章站 2022-06-29 13:53:39
什么是函数 函数是对功能或者动作的封装 函数的语法和定义 define 定义 def 函数名(): 函数体 调用: 函数名() def yue(): # 描述你的动作 print("拿出手机") print('打开陌陌') print("找一个心仪的小姐姐") print('有没有时间啊, 聊聊人生 ......
什么是函数
函数是对功能或者动作的封装
函数的语法和定义
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() # 调用函数