码迷,mamicode.com
首页 > 编程语言 > 详细

python - 函数基础

时间:2020-05-14 22:30:54      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:返回   style   col   orm   das   形参   内存   函数定义   命名   

一、函数定义:

  • def:表示函数的关键字

  • 函数名:函数的名称,日后根据函数名调用函数

  • 函数体:函数中进行一系列的逻辑计算,如:发送邮件、计算出 [11,22,38,888,2]中的最大数等...

  • 参数:为函数体提供数据

  • 返回值:当函数执行完毕后,可以给调用者返回数据。

二、函数结构

def 函数名():
... 函数体
...

例如:

#输出字符串长度
s =adaijdia def my_len(s): i = 0 for k in s: i+=1 return i a = my_len(s)#8 print(a)

 

 三、返回值(return)的三种情况

 

  1.没有返回值---返回None

        #不写return

        #只写return:结束一个函数的继续

        #return None  

  2.返回一个值:

        #可以返回任何数据类型

        #只要返回就可以接受到

        #如果在一个程序中有多个return,那么只执行第一个

  3、返回多个值:

        #用多个变量接受:有多少返回值就用多少变量接收

        #用一个变量接收:得到的是一个元祖

四、参数

4.1、参数定义

  1.形参:

  #写在函数声明的位置的变量叫形参,形式上的一个完整.表示这个函数需要xxx

  2.实参:

  #在函数调用的时候给函数传递的值.加实参,实际执行的时候给函数传递的信息.表示给函数xxx

 函数的传参就是函数将实际参数交给形式参数的过程.

#输出字符串长度
s =adaijdia
def my_len(s):  #接收参数,形式参数,形参
    i = 0
    for k in s:
        i+=1
    return i
a = my_len(s)  #传递参数:传参,实际参数,实参
print(a)#8

 4.2、站在实参的角度上,传参数

   1.按位置传参数

   2.按关键字传参数

   3.混合传参(必须先按位置传参,再按关键字传参数!

#站在实参的角度上,传参数
def s(a,b):
    result = a-b
    return result
s1 = s(2,3)#按位置传参数
s2 = s(b = 3,a = 2)#按关键字传参数
s3 = s(2,b = 3)#混合传参(必须先按位置传参,再按关键字传参数!)
print(s1,s2,s3)#-1 -1 -1

 

 4.3、站在行参的角度上,传参数

   1.位置参数:必须传,有几个参数就传几个值

   2.默认参数:可以不传,如果不传就是默认的参数,如果传了就用传的

 

#站在行参的角度上,传参数
def classmate(name,index=):
    print({}:{}.format(name,index))
classmate(wws)#wws:男
classmate(db,)#db:女

五、命名空间

5.1内置命名空间  ——— python解释器

       #就是pytho解释器一启动就可以使用的名字存储在内置命名空间里

       #内置的名字在启动解释器的时候被加载进内存里

5.2 全局命名空间 —— 我们写的代码但不是函数中的代码

        #是在程序从上到下被执行的过程中一次加载进内存的

        #放置了我们设置的所有变量名和函数名

5.3 局部命名空间  —— 函数

       #就是函数内部定义的名字

       #当调用函数的时候 才会产生这个命名空间 随着函数执行的结束 这个命名空间就消失了

 

python - 函数基础

标签:返回   style   col   orm   das   形参   内存   函数定义   命名   

原文地址:https://www.cnblogs.com/2584808136-qq-com/p/12872513.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!