python ---------函数,,一、为什么要使用函数


一、为什么要使用函数?

  因为如果没有函数我们平时的代码就会有很多重复

  避免代码重用

  提升代码的可读性

二、函数的定义与调用:

  

1.def 函数名(参数1,参数2)

    ‘‘‘ 函数注释‘‘‘

    print(‘函数体‘)

    return 返回值

函数就是封装一个功能

定义:

  def 关键字开头,空格之后接函数名和圆括号,最后加一个冒号

  def是固定的不能改变

函数名的定义和变量一样 :数字字母下划线 任意组合 ,不能是数字开头 不能是关键字 要具有可描述性

函数的调用

返回值=函数名(参数1,参数2)#记得函数名后面加括号

下面我们先来定义一个求计算字符串长度的函数。假如我们的len()函数现在不能用了,那么我们就需要定义一个函数,求字符串的长度。如果让我们一次一次的去写相同的代码,会显得很麻烦。这时候我们的函数就上场了。

技术分享图片
def length():    s= ‘hello world‘    length = 0    for i in s :        length +=1    print(length)print(length())    #因为没有返回值你打印最后会显示一个nulldef length():    s= ‘bjbbabjsaofsa‘    num = 0    for i in s:        num +=1    return num   m = length()print(m)# print(length())#return的时候你可以定义一个变量来接收 也可以不接收直接打印 但是如果print就不可以 但是一般最好不要在函数中写print太lowle 
View Code

函数的返回值:

定义函数一般不要在函数中写print

return

1、在函数中遇到return就结束函数

2、将值返还给函数的调用者

  无return

    return None

  return一个值该值是什么就返还什么

大家看一下对与函数中只能存在一个return 因为第一个碰到return就把函数结束了

>>> def func(a, b ,c):    return a    return b>>> print(func(3, 7, 8))3     #只返回第一个return的3  因为碰到第一个return就把函数结束了 其他的return 存在的没有意义了>>> 

  

函数的传递参数:

  两个方面:

  实参角度:

  1形式参数和实际参数

  

技术分享图片
def my_len(a): #这个a就是形式参数 用来接收实际参数的    return lprint(my_len(3))  #实际参数 实实在在存在的
View Code

  2位置传参 一 一对应

  

def func(a, b ,c):    return a, b, cprint(func(2, 3,700))   #一一对应并且是当作一个元组打印出来

  3、混合传参----->关键字永远在最后面

  

def func(a, b=30 ,c): #形式参数和实际参数的一样都是直接赋值的要放在最后不然会报错,这个你看b直接赋值了但是放在了中间就报错    return a, b, c,print(func(2, 3,b=700))

  

def func(a, c ,b=40):    return a, b, c  #这个就是对的  就是全部都放在后面print(func(2, 3,b=700))

如果你return的好几个值都在一起return那么最后的返回值显示出来就在一个元组内

技术分享图片

默认传参:

技术分享图片
def Info(username,sex=‘男‘):  #定义一个默认参数  sex    with open(‘one‘,encoding= ‘UTF-8‘,mode = ‘a‘)as f :  #a就是追加内容        f.write(‘{}\t{}\n‘.format(username,sex))while True :    username= input(‘输入您的姓名:(男生为1开头)‘).strip()    if ‘1‘ in username :        username =username[1:]        Info(username)    else :        Info(username,sex=‘女‘)
View Code

python ---------函数

评论关闭