Python__函数和代码复用
主要内容
- 函数的定义和使用
- 实例:七段数码管的绘制
- 代码复用与函数递归
- 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__函数和代码复用的更多相关文章
- Python基础篇(三)_函数及代码复用
Python基础篇_函数及代码复用 函数的定义.使用: 函数的定义:通过保留字def实现. 定义形式:def <函数名>(<参数列表>): <函数体> return ...
- Python学习笔记(五)函数和代码复用
函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Python提供了许多内建函数,比如print().同样,你也可以自己创建函数, ...
- 函数和代码复用 --Python
1.关于递归函数的描述,以下选项中正确的是 A.包含一个循环结构 B.函数比较复杂 C.函数内部包含对本函数的再次调用 D.函数名称作为返回值 答案:D 答案解析:递归函数是指函数内部包含对本函数的再 ...
- Python学习笔记6函数和代码复用
1.函数 (1)定义: (2)函数调用 (3)函数的参数传递 参数传递的两种方式:函数调用时,参数可以按照位置或名称的方式传递 (4)函数的返回值 (5)局部变量和全局变量 (6)lambda函数 2 ...
- Python语言程序设计基础(5)—— 函数和代码复用
lambda sum = lambda x,y : x + y print(sum(3,3),type(sum)) 默认参数 def prints(str,times = 2) : print(str ...
- Python中用函数实现代码的复用
# Python中用函数实现代码复用 """ def funcname(paras): statements return [expression] 关于函数定义说明如下 ...
- Python-函数和代码复用
函数的定义与使用 >函数的理解与定义 函数是一段代码的表示 -函数是一段具有特定功能的.可重用的语句组 -函数是一种功能的抽象,一般函数表达特定功能 -两个作用:降低编程难度 和 代码复用 de ...
- if __name__== "__main__" 的意思(作用)python代码复用
if __name__== "__main__" 的意思(作用)python代码复用 转自:大步's Blog http://www.dabu.info/if-__-name__ ...
- javascript 模式(1)——代码复用
程序的开发离不开代码的复用,通过代码复用可以减少开发和维护成本,在谈及代码复用的时候,会首先想到继承性,但继承并不是解决代码复用的唯一方式,还有其他的复用模式比如对象组合.本节将会讲解多种继承模式以实 ...
随机推荐
- golang 编译为dll 的方法
之前一直再找如何将geojson 转为 svg 格式的数据,看到github上大多都是js来转的,只有一篇是golang来做的,想来把它封成dll 给c#.c++ 调用,网上查了很多方法,并没有写的很 ...
- c# 字符串中某个词出现的次数及索引
字符串中某个词出现的次数主要是考察队字符串方法的使用: indexof(): 有9个重载,具体的请转到F12查看详细内容: 本文使用的是第6个重载: 如果找到该字符串,则为从零开始的索引位置:如果未找 ...
- HDU 1024 最大M字段和
一道关于求最大M字段和的问题,翻译完题之后感觉很简单但就是写不来,后来仿佛推到一个dp式子了,对,仿佛...然后抄袭了个式子,嘿,和我的式子大体相似,然后就是很玄学的优化了...不多瞎bb了 1.首先 ...
- webpack快速入门——CSS进阶:SASS文件的打包和分离
1.安裝:因为sass-loader依赖于node-sass,所以需要先安装node-sass cnpm install node-sass --save-dev cnpm install sass- ...
- String 在内存中如何存储的
基本数据类型由于长度固定,且需要空间比较少,所以直接存储在栈中:而对象比较大,所以栈中只存储一个4btye的引用地址(逻辑地址). java中对String对象特殊对待,所以在heap区域分成了两块: ...
- 在vue-cli建的vue项目中使用sass
前面已使用vue-cli新建了一个vue项目,参考 使用命令行创建一个vue项目的全部命令及结果 首先看下新建项目的页面和代码,有部分修改,可忽视,如下图: 然后我们在页面添加sass的代码 ...
- zookeeper知识点学习
单机模式配置: Zookeeper 的启动脚本在 bin 目录下,Linux 下的启动脚本是 zkServer.sh 在你执行启动脚本之前,还有几个基本的配置项需要配置一 下,Zookeeper 的配 ...
- 修改WAMPServer(Apache+PHP+MySQL一键式安装)中mysql默认空密码
Note:在EclipsePHP中配置WorkSpace时,将工作目录指到执行PHP代码的www目录下 ,便于在Eclipse下编写PHP项目 eg:D:\KelvinSoftwar ...
- 第6章—渲染web视图—SpringMVC+Thymeleaf 处理表单提交
SpringMVC+Thymeleaf 处理表单提交 thymleaf处理表单提交的方式和jsp有些类似,也有点不同之处,这里操作一个小Demo,并说明: 1.demo的结构图如下所示: pom.xm ...
- SQL Function 自定义函数
目录 产生背景(已经有了存储过程,为什么还要使用自定义函数) 发展历史 构成 使用方法 适用范围 注意事项 疑问 内容 产生背景(已经有了存储过程,为什么还要使用自定义函数) 与存储过程的区别(存 ...