博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python基础总结(函数)
阅读量:5346 次
发布时间:2019-06-15

本文共 1499 字,大约阅读时间需要 4 分钟。

1.函数的4种类型

无参,无返回值

def f1():     print('f1...')     f1()

有参,无返回值

def f2(num1, num2, num3):

    print('f2...')

    print(max(num1, num2, num3))

f2(110, 119, 120)

  print('over...')

无参,有返回值

def f3():

  print('f3...')

  return 110

ret = f3()

print(ret)

有参,有返回值

def f4(num1, num2, num3):

  print('f4...')

  ret_max = max(num1, num2, num3)

  return ret_max

ret = f4(110, 119, 120)

print(ret)

2.函数嵌套

def f1():

   print('f1...1')

  f2()

  print('f1...2')

def f2():

  print('f2...1')

  print('f2...2')

f1()

3.可变参数-元组

def calc(*numbers):

    sum = 0

    for n in numbers:

        sum = sum + n * n

return sum

4.可变参数-字典

def person(name, age, **kw):

  print('name:', name, 'age:', age, 'other:', kw)

参数的顺序必须是:(必选参数、默认参数、可变参数)这个顺序,否则系统会出错!

5.全局变量

num1 = 100

def qwe(num1):

  num1 += 5

  print(num1)

print(num1)

qwe(num1)

6.局部变量

def qwe():

  num1 = 100

  num1 += 5

  print(num1)

print(num1)

7.递归函数

如果一个函数在内部不调用其它的函数,而是自己本身的话,这个函数就是递归函数。

满足递归的条件:有循环的内容和有跳出的条件,递归默认是有递归深度要求的

def fib_circle(num):

  a = 0

  b = 1

  c = 1

  for i in range(1, num):     c = a + b     a = b     b = c    return c print(fib_circle(2000))

8.匿名函数

用lambda关键词能创建小型匿名函数。这种函数得名于省略了用def声明函数的标准步骤。

lambda函数的语法只包含一个语句,如下:lambda [arg1 [,arg2,.....argn]]:expression

注意:Lambda函数能接收任何数量的参数但只能返回一个表达式的值

add = lambda a, b: a + b print(add(1, 2))
def add(a, b):     return a + b print(add(1, 2))
 

其实两个代码的效果是一样的,但是出现的次数少,然后用lambda函数来解决问题

 

 

注意:本篇文章是个人总结,仅供参考。若出现其他问题,与写者无关,切勿用于商业获取福利!

   如果总结有勿,或者交流与学习,请与写着联系!qq:1349176744

转载于:https://www.cnblogs.com/quietly-elegant/p/10283711.html

你可能感兴趣的文章
Flutter学习笔记(一)
查看>>
iOS10 国行iPhone联网权限问题处理
查看>>
洛谷 P1991 无线通讯网
查看>>
[HIHO1184]连通性二·边的双连通分量(双连通分量)
查看>>
Codeforces Round #178 (Div. 2) B. Shaass and Bookshelf 【动态规划】0-1背包
查看>>
SparkStreaming 源码分析
查看>>
【算法】—— 随机音乐的播放算法
查看>>
mysql asyn 示例
查看>>
DataGrid 点击 获取 行 ID
查看>>
git 使用
查看>>
边框圆角方法
查看>>
asp.net WebApi自定义权限验证消息返回
查看>>
php中eval函数的危害与正确禁用方法
查看>>
20172315 2017-2018-2 《程序设计与数据结构》第十一周学习总结
查看>>
MySQL添加、修改、撤销用户数据库操作权限的一些记录
查看>>
关于谷歌浏览器Chrome正在处理请求的问题解决
查看>>
Git核心技术:在Ubuntu下部署Gitolite服务端
查看>>
平面波展开法总结
查看>>
建造者模式
查看>>
ArraySort--冒泡排序、选择排序、插入排序工具类demo
查看>>