主要内容

  • 函数的定义和使用
  • 实例:七段数码管的绘制
  • 代码复用与函数递归
  • PyInstall库的使用
  • 实例:科赫雪花小包裹

函数的定义与使用

  • 函数的理解与定义
  • 函数的使用及调用过程
  • 函数的参数传递
  • 函数的返回值
  • 局部变量和全局变量
  • lambda函数

------------------------------------

函数的定义:函数是一段代码的表示                               函数的作用: 降低编程难度    和    代码复用

(函数是一段具有特定功效的、可重用的语句组         函数是一种功能的抽象,一般函数表达特定功能)

函数定义语法:

def <函数名> (<参数(0个或多个)>):

<函数体>

return <返回值>

注意:

函数定义时,所指定的参数是一种占位符

函数定义后,如果不经过调用,不会被执行

函数定义时,参数是输入、函数体是处理、结果是输出(IPO)      函数也是一种完整代码的封装

函数调用  fact(10)

可选参数(赋初值,在必选参数后面定义)、可变参数(*b)、名称传递

对于不确定参数个数,可以添加*b形式定义

def  fact(n,m=1,*b):  xxxxx

函数参数传递,可以通过位置直接给定,也可以指定:fact(m=2,n=123)

  • 函数的返回值

函数可以返回0个或多个结果

--return 保留字用来传递返回值

--函数可以有返回值,也可以没有,可以有return,也可以没有

--return可以传递0个返回值,也可以传递任意多个返回值  return a,b,c   得到的结果是元组类型  小括号括起来的  (123,a,b) 调用可以是:a,b,c = fact(10,5)

  • 局部变量和全局变量

规则1:局部变量喝全局变量是不同的变量

-局部变量是函数内部的占位符,与全局变量可能重名但不同

-函数运算结束后,内部变量被释放

-可以使用 global保留字在函数内部使用全局变量

规则2:局部变量为组合数据类型且未创建,等同于全局变量

ls = ["F","f"]

def func (a):

ls.append(a)

return

func("C")

print(ls)       运行结果: ["F","f","C"]     如果函数中真实创建了,那么这里是 ["F","f"]

使用规则

-基本数据类型,无论吃否重名,局部变量与全局变量不同

-可以通过global保留字在函数内部声明全局变量

-组合数据类型,如果局部变量未真实创建,则是全局变

  • lambda函数

lambda函数返回函数名作为结果

-lambad函数是一种匿名函数,即没有名字的函数

-使用lambda保留字定义,函数名是返回结果

-lambda函数用于定义简单的,能够在一行内表示的函数

<函数名> = lambda <参数0个或多个> : <表达式>

等价于

def <函数名> (参数):

<函数体>

return <返回值>

不同的是lambda后面的内容只能使用表达式,不能使用函数体

比如:  f = lambda x,y : x+y

>>>f(10,15)             25

f = lambda : "lambda函数"

>>>print (f())    lambda函数

谨慎使用lambda函数

-lambda函数主要用作一些特定函数或方法的函数

-lambda函数有一些固定使用方式,建议逐步掌握

-一般情况,建议使用def定义的普通函数

Python__函数和代码复用的更多相关文章

  1. Python基础篇(三)_函数及代码复用

    Python基础篇_函数及代码复用 函数的定义.使用: 函数的定义:通过保留字def实现. 定义形式:def <函数名>(<参数列表>): <函数体> return ...

  2. Python学习笔记(五)函数和代码复用

    函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Python提供了许多内建函数,比如print().同样,你也可以自己创建函数, ...

  3. 函数和代码复用 --Python

    1.关于递归函数的描述,以下选项中正确的是 A.包含一个循环结构 B.函数比较复杂 C.函数内部包含对本函数的再次调用 D.函数名称作为返回值 答案:D 答案解析:递归函数是指函数内部包含对本函数的再 ...

  4. Python学习笔记6函数和代码复用

    1.函数 (1)定义: (2)函数调用 (3)函数的参数传递 参数传递的两种方式:函数调用时,参数可以按照位置或名称的方式传递 (4)函数的返回值 (5)局部变量和全局变量 (6)lambda函数 2 ...

  5. Python语言程序设计基础(5)—— 函数和代码复用

    lambda sum = lambda x,y : x + y print(sum(3,3),type(sum)) 默认参数 def prints(str,times = 2) : print(str ...

  6. Python中用函数实现代码的复用

    # Python中用函数实现代码复用 """ def funcname(paras): statements return [expression] 关于函数定义说明如下 ...

  7. Python-函数和代码复用

    函数的定义与使用 >函数的理解与定义 函数是一段代码的表示 -函数是一段具有特定功能的.可重用的语句组 -函数是一种功能的抽象,一般函数表达特定功能 -两个作用:降低编程难度 和 代码复用 de ...

  8. if __name__== "__main__" 的意思(作用)python代码复用

    if __name__== "__main__" 的意思(作用)python代码复用 转自:大步's Blog  http://www.dabu.info/if-__-name__ ...

  9. javascript 模式(1)——代码复用

    程序的开发离不开代码的复用,通过代码复用可以减少开发和维护成本,在谈及代码复用的时候,会首先想到继承性,但继承并不是解决代码复用的唯一方式,还有其他的复用模式比如对象组合.本节将会讲解多种继承模式以实 ...

随机推荐

  1. System.IO.FileLoadException:“混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。”

    解决方案: 在app.config新增如下配置节: <?xml version="1.0"?> <configuration> <startup us ...

  2. 创建/删除Cookie数据

    //1.编写(创建 和 修改 一样) HttpCookie cookie = new HttpCookie("userName");cookie.Value = "顾志海 ...

  3. 第三节:使用Log4net和过滤器记录异常信息,返回异常给前端

    上次面试,遇到,在项目中如何处理业务异常和代码异常,使用txt记录异常信息后,如何直接区分出异常的类型,异常怎么分类处理,希望大家能帮我提出宝贵的意见,完善处理异常, 统一返回参数 public cl ...

  4. Web Server IIS7部署网站常遇到的错误及解决办法

    IIS7部署网站常遇到的错误及解决办法 经常遇到问题: 1.错误:403.14-Forbidden Web 服务器被配置为不列出此目录的内容及Login on failed for "IIS ...

  5. Zookeeper之Curator(1)客户端基本的创建,删除,更新,查找操作api

    Curator Framework提供了简化使用zookeeper更高级的API接口.它包涵很多优秀的特性,主要包括以下三点: 自动连接管理:自动处理zookeeper的连接和重试存在一些潜在的问题: ...

  6. react native 学习之 native modules

    翻译自https://facebook.github.io/react-native/docs/native-modules-ios.html Native Modules 很多情况下,app需要使用 ...

  7. 3.修改更新源sources.list,提高软件下载安装速度(2017.04.05)

    2017年4月5日再次更新源 1.切换到root用户(如果已经是root用户就直接看第二步) dnt@HackerKali:~$ su 密码: 2.用文本编辑器打开sources.list,手动添加下 ...

  8. linux文件系统底层原理

    Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux 用户和程序看到的文件.目录.软连接及文件保护信息等都存储在其中. 底层原理图: 在讲解各个 ...

  9. WinForm—控制文本框只能输入整数(包括小数)

    //控制控件输入的是正数(包括小数) private void txt_Weight_KeyPress(object sender, KeyPressEventArgs e) { //第一步:判断输入 ...

  10. RHCE 学习结构

    本文内容为本站的 blog 链接 第一章   安装初体验 第二章   访问系统 2.1 基于图形化界面访问 2.2 基于文本访问 2.3 用户管理 第三章   文件系统 3.1  Linux 文件系统 ...