一 简单函数和函数指针

def myadd(a,b):
    return a + b;

print(myadd(3,2));
f = myadd;
print(f(20,30));

二 函数的默认参数

def result(r = 2):
    if( r == 1):
        print('bad')
    elif(r == 2):
        print('good')
    elif(r == 3):
        print('great')

result()
result(1)

def f2(a, L=[]):
    L.append(a)
    return L

print(f2(1))
print(f2(2))
print(f2(3))

def f3(a, L=None):
    if L is None:
        L = []
    L.append(a)
    return L

print(f3(1))
print(f3(2))
print(f3(3))

结果:
good
bad
[1]
[1, 2]
[1, 2, 3]
[1]
[2]
[3]
注意:
默认值在程序的整个运行过程中仅评估一次,对于参数为可变类型的要特别注意,例如list,dictionary,大部分的class类型。
跟C++一样,没有默认值的在前,后面的为有默认值。

三 关键字参数和参数打包

def ilike(first, second = 'banana', third = 'apple'):
    print("first is ", end = ' ');  print(first, end = ', ')
    print("second is ", end = ' ');  print(second, end = ', ')
    print("and third is ", end = ' ');  print(third)

ilike('pear');
ilike('pear', second = 'apple', third = 'banana')
ilike( 'ilike', third = 'god')

d = {'third' : 'apple', 'second' : 'pear', "first" : "banana"}
ilike(**d)

四 任意长度参数和dictionary参数

def cheeseshop(kind, *arguments, **keywords):
    print("-- Do you have any", kind, "?")
    print("-- I'm sorry, we're all out of", kind)
    for arg in arguments: print(arg)
    print("-" * 40)
    keys = sorted(keywords.keys())
    for kw in keys: print(kw, ":", keywords[kw])

cheeseshop("Limburger", "It's very runny, sir.",
           "It's really very, VERY runny, sir.",
           shopkeeper="Michael Palin",
           client="John Cleese",
           sketch="Cheese Shop Sketch")

注意:
*参数名字,表示任意个数的参数。
**参数名字,表示dictionary参数。
*参数必须出现在**前面。

五 函数定义lamda表达式

def make_incrementor(n):
     return lambda x: x + n

f = make_incrementor(42)
print(f(1))
print(f(2))

注意:这功能高级!

完!

python语法31[函数]相关推荐

  1. Python语法之函数

    函数 函数,就是一系列指令语句所组成,它的目的有两个. 当我们在设计一个大型程序时, 若是能将这个程序依功能, 将其分割成较小的功能, 然后依这些较小功能要求撰写函数程序, 如此, 不仅使程序简单化, ...

  2. python语法与函数

    目录 1.list (元组类似)的使用:统计.插入.追加.查询索引.删除.反向.排序 2.字典dist的使用:定义.根据键获取值.修改.删除.复制.遍历 3.set(集合:元素互异)的使用:定义,新增 ...

  3. python语法31[with来自动释放对象]

    一 with python中的with的作用是自动释放对象,即使对象在使用的过程中有异常抛出.可以使用with的类型必须实现__enter__ __exit__.我的理解是=try...finally ...

  4. python语法31[变量的作用域+global]

    一  变量与作用域 变量的定义使用var=varvalue 1)如果函数中定义了同名的变量,则同名的全局变量被屏蔽,否则查找使用全局变量 def f1():     v1 = 'local'      ...

  5. python实用的语法和函数

    本文介绍了python中实用的一些语法和函数 持续更新 代码较长 1215行 建议保存源码 遇到有困惑的时候 在代码中Ctrl+F寻找答案 Gitee源码 Github源码 目录: 版本查看 pip ...

  6. Python基本语法_函数属性 参数类型 偏函数的应用

    目录 目录 前言 软件环境 Python Module的程序入口 函数的属性 Python函数的创建 函数的参数 必备参数 缺省参数 命名参数 不定长参数 匿名参数 偏函数的应用 前言 Python除 ...

  7. python导入模块的语法结构_python学习第五讲,python基础语法之函数语法,与Import导入模块....

    python学习第五讲,python基础语法之函数语法,与Import导入模块. 一丶函数简介 函数,就是一个代码块,这个代码块是别人写好的.我们调用就可以. 函数也可以称为方法. 1.函数语法定义 ...

  8. python中format函数用法简书_从Python安装到语法基础,这才是初学者都能懂的爬虫教程...

    Python和PyCharm的安装:学会Python和PyCharm的安装方法 变量和字符串:学会使用变量和字符串的基本用法 函数与控制语句:学会Python循环.判断语句.循环语句和函数的使用 Py ...

  9. python语法之元类与type()函数

    元类 千万不要被所谓"元类是99%的python程序员不会用到的特性"这类的说辞吓住.因为每个中国人,都是天生的元类使用者 学懂元类,你只需要知道两句话: 道生一,一生二,二生三, ...

最新文章

  1. android都图片mat_Android内存泄露整理
  2. 【OpenCV 4开发详解】图像连接
  3. ES6的这些操作技巧,你会吗?
  4. iOS 设置所有UIButton的ExclusiveTouch属性为YES
  5. struts2中result的type属性详解
  6. “鹅厂养鹅”是假的,但腾讯这个“山洞”是真的
  7. opencv 文件模块 解析
  8. oracle exec编译失效,编译oracle失效的函数、存储过程、视图等
  9. 4.3.3 用jQuery获取动态数据
  10. how tomcat works(第15章: Digester)
  11. 浙大计算机学院2021复试名单,浙江大学2021年硕士研究生各院复试细则及复试名单汇总...
  12. 正则表达式最后的/i是不区分大小写的意思
  13. linux valgrind 编译,valgrind 3.9交叉编译
  14. 设计模式(2)-抽象工厂模式(Abstract Factory)与生成器模式(Builder)模式
  15. 倒车检测线怎么接图解_倒车影像摄像头3根线安装图解 这是倒车影像的电源线...
  16. linux系统中归档管理器,深度商店应用归档管理器、KShutdown、7-Zip、California
  17. RGB颜色查询对照代码表
  18. echarts markline X轴 Y轴 添加标识线
  19. 如何确认是文章发表在哪里?
  20. 《算法笔记》9.4小节 9.5小节——数据结构专题(2)->二叉查找树(BST)->平衡二叉树(AVL)

热门文章

  1. 第1章 初识软件工程
  2. 云计算测试——软件测试的未来
  3. 【论文翻译】Automatic Conversion of Road Networks from OpenDRIVE to Lanelets
  4. 2021国产数据库领域最具商业合作价值企业盘点
  5. Android 自定义View(四)实现股票自选列表滑动效果
  6. 【IOS开发高级系列】异步绘制专题
  7. 如何通过安装包安装应用到手机
  8. linux 负载均衡技术之 LVS
  9. 计算广告(3)----搜索广告召回匹配
  10. 数字转换成大写人民币