最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Python基础知识之函数总结

来源:动视网 责编:小采 时间:2020-11-27 14:13:14
文档

Python基础知识之函数总结

Python基础知识之函数总结:本篇文章给大家分享的是Python基础知识之函数总结,内容挺不错的,希望可以帮助到有需要的朋友。函数:包含自定义函数、内置函数1)自定义函数结构:包含五个部分:def关键字:识别用于创建函数函数名:比如f1():()里面有参数函数体:具体这个函数要实现的功
推荐度:
导读Python基础知识之函数总结:本篇文章给大家分享的是Python基础知识之函数总结,内容挺不错的,希望可以帮助到有需要的朋友。函数:包含自定义函数、内置函数1)自定义函数结构:包含五个部分:def关键字:识别用于创建函数函数名:比如f1():()里面有参数函数体:具体这个函数要实现的功
 本篇文章给大家分享的是Python基础知识之函数总结,内容挺不错的,希望可以帮助到有需要的朋友。

函数:包含自定义函数、内置函数

1)自定义函数结构:包含五个部分:

  • def关键字:识别用于创建函数

  • 函数名:比如f1

  • ():()里面有参数

  • 函数体:具体这个函数要实现的功能

  • return:返回值,如果无,则返回none

  • 如下所示:

    2)函数的调用:用函数名+()

    形式为:函数名(参数1,参数2),比如f1(5,8)

    3)函数的执行顺序:自上至下。

    而函数体只有在被调用的时候才执行

    如果要取函数的返回值,需要赋值。

    函数体中的return后的语句不再执行。

    执行结果:

    案例1:自定义函数,因为没有调用函数,所以函数体不执行

    f1():
    ()

    案例2,调用函数,执行函数体。函数体中一旦执行到return,则立即终止,因此后面的print(456)永远不会执行。

    f1():
    ()
    ()
    f1()

    案例执行结果为:123

    案例3,结果为123、111,因为有return把值给了r,print(r)打印出来111

    f1():
    ()
    r=f1()
    (r)

    案例执行结果为:123、111

    案例4:当函数无return的时候,自动默认返回值为None;返回结果为123、None,因为没有return,r接受到的值为None

    f1():
    ()
    r=f1()
    (r)

    案例执行结果为:123、none

    案例5:python传递的是引用,不是复制,如下的li经过函数体执行后,已经被引用了

    f1(a1):
     a1.append()
    li=[,,,]
    (li)
    f1(li)
    (li)

    执行结果:

    [11, 22, 33, 44]

    [11, 22, 33, 44, 999]

    4)函数的参数:

    比如f(x1,x2,x3=1),x1,x2,x3则为参数

    包含的参数类型有:

    普通参数:形式参数和实际参数

    默认参数:提前给定值,比如x3

    指定参数:实际参数调用时,可以改变顺序指定

    动态参数:

    *args

    **kargs

    万能参数*args,**kagrs

    案例1:区分形式参数和实际参数:

    案例中的xxx为形式参数,调用函数时传递的为实际参数

    f1(xxx):
    ()
    xxx+r=f1()
    (r)

    案例2:理解参数的调用

    普通参数,x1、x2,在f1里面按顺序传递


    f1(x1,x2):
    x1+x2
    r=f1(,)

    默认参数,如果设置,则该形式参数必须放后面,如x3,调用时不用再次传递

    f1(x1,x2,x3=):
    x1+x2+x3
    r=f1(,)

    指定参数,指定参数可以改变顺序指定


    f1(x1,x2,x3=):
    x1+x2+x3
    f1(x2=,x1=)
    (r)

    案例3:动态函数(函数名前加*,或者**):一个形式参数,可以接受多个实际参数。

    当形式参数带*时,默认将传递的参数放置在群组中

  • 当实际参数为普通参数传递时,即使列表,也会被作为一个元素传递

  • 当实际参数有*时,list所有的元素将相应的作为元祖的每一个元素

  • (x,(x))
    f1(,,)
    li=[,,,]
    f1(li)
    f1(*li)

    执行结果:

    ('55', 66, 'll') <class 'tuple'>

    ([11, 22, 33, 'hhhh'],) <class 'tuple'>

    (11, 22, 33, 'hhhh') <class 'tuple'>

    当为**时,默认传递的参数放置在字典中,实际参数必须为指定参数或字典

    案例4:如果形式参数为**,传递实际参数的时候也传递**,则会把整个字典传进去

    f1(**x):
    (x,(x))
    f1(=,=)
    dic={:,:}
    f1(**dic)

    执行结果:

    {'n1': 'hh', 'n2': 'kk'} <class 'dict'>

    {'k1': 'n1', 'k2': 'n2'} <class 'dict'>

    案例5:万能参数:f1(*args,**args),必须*在前,**在后

    f1(*a,**x):
    (a,(a))
    (x,(x))
    f1(,,,**{:,:})

    执行结果

    (11, 22, 33) <class 'tuple'>

    {'k1': 'n1', 'k2': 'n2'} <class 'dict'>

    关于万能参数的应用,就是str.format

    案例6:用占位符传递,这样是*arg的应用

    s1=.format(,)
    s2=.format(*[,])
    (s1)
    (s2)

    执行结果:

    i am hh,age2

    i am hh,age2

    案例7:当形式参数为字符变量时,必须后面指定参数传递,为**arg的应用

    =.format(=,=)
    dic={:,:}
    s2=.format(**dic)
    ()
    (s2)

    执行结果:

    i am hh,age2

    i am nn,age4

    5)全局变量:作用在全局,用大写表示,如果要修改且作用于全局,则需要加global

    案例1:全局变量:作用域在全局,用大写表示。

    =f1():
     age=(age,)
    f2():
     age = (age, )
    f1()
    f2()

    案例2:修改全局变量:如果要修改且对全局有用,则可以用global

    NAME=f1():
     age=NAME
     NAME = (age,NAME)
    f2():
     age = (age, NAME)
    f1()
    f2()

    执行结果:

    案例3:修改全局变量:不加global,则仅作用在函数内部

    =f1():
     age= = (age,)
    f2():
     age = (age, )
    f1()
    f2()

    执行结果:

    6)三元三目运算:即if..else的简称。

    格式为:"为真时的结果 if 判定条件 else 为假时的结果" ,

    “condition ? true_part : false_part”

    案例1:如果1==1条件成立,就等于前面的值,否则为后面的值hhh

    ==:
     name=:
     name=name2===

    6)lambda函数:目的就是简化用户定义使用函数的过程

    案例1:lambda函数,简写函数,一个参数

    f1(a1):
    a1+ret=f1()
    (ret)

    #案例可以简写

    =a1:a1+r1=()
    (r1)

    案例2:lambda函数,简写俩参数

    =a1,a2:a1*a2+r1=(,)
    (r1)

    案例3:应用lambda函数

    =[,,,,,]
    key=w:[w]
    r=key()
    (r)

    案例4:循环用法案例

    =n=alphabet=s3=[[:i]+c+[i+:] i () c alphabet]
    (s3)
    执行
    结果为:

    7)python有很多内置函数,可以直接使用

    可参考:http://www.cnblogs.com/vamei/archive/2012/11/09/2762224.html

    文档

    Python基础知识之函数总结

    Python基础知识之函数总结:本篇文章给大家分享的是Python基础知识之函数总结,内容挺不错的,希望可以帮助到有需要的朋友。函数:包含自定义函数、内置函数1)自定义函数结构:包含五个部分:def关键字:识别用于创建函数函数名:比如f1():()里面有参数函数体:具体这个函数要实现的功
    推荐度:
    标签: 基本 函数 基础
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top