python 函数的详解与应用范例

目录
  • 如何定义一个函数
  • 如何使用
  • 什么是参数
  • 不定长参数
  • return是干什么

如何定义一个函数

函数也称方法,下面写一个简单的函数:

def function():
	print("我是函数。")

这是一个很简单的函数,函数只干了一件事,打印输出“我是函数。”这句话。
从这个函数的外观看,有个def,还有个function加个():
def是定义函数的关键字不能改动,function为函数的名称,可以随便写,后加():这是规定。
在函数里面的输出语句可以称之为函数体所有函数体需要进行缩进,不然那个会报错。

如何使用

使用方式很简单

function()

重复函数名再加上括号,就可以使用了

什么是参数

接下来我写一个函数:

def function(a,b):
	print(a,b)

在这个函数里,括号里面的 a和b就叫参数(函数参数)也叫形式参数。参数是干什么的呢?参数的作用是可以向这个目标函数传入一些东西。

比如在这个函数里是可以打印外面传入的参数内容:

function("aaa","bbb")

我向这个函数传入了两个参数,参数的位置是不能改变的,"aaa"可以成为实际参数,对应的就是a这个形式参数,"bbb"对应就是b,这个传入的过程为参数传递

结果输出的顺序就是:

aaa bbb

还可以这样进行参数传递:

function(a="aaa","bbb")
function("aaa",b="bbb")
function(a="aaa",b="bbb")
function(b="bbb",a="aaa")

当我们所定义的函数里面存在参数,当使用的它的时候,一定需要传入参数不然会报错,类如:

def function(a):
	print(a)

function()

运行结果:

TypeError Traceback (most recent call last)
<ipython-input-1-1ea14deaa8c8> in <module>
2 print(a)
3
----> 4 function()

TypeError: function() missing 1 required positional argument: 'a'

不定长参数

如果不知到传递的参数到底有多少,该怎么办呢?
可以用***来实现。

加了 * 的参数会以元组(tuple)的形式传入,存放所有未命名的变量参数,类如:

def function(*args):
	print(args)
function(12,35,65)

运行结果:

(12, 35, 65)

发现输出结果是一个元组,包含了所有传入的参数

加了两个星号 ** 的参数会以字典的形式传入;

def function(**kwargs):
	print(kwargs)
function(a=12,b=35,c=65)

这里传入的参数需要注意,是键值对。

当 一个星号,和两个星号同时出现,一个星号必须在两个星号前面,列如:

def function(*args, **kwargs):
	print(args)
	print(kwargs)

return是干什么

如果函数里面出现return,表示这个函数运行到这里结束了,后面不管有多少多不会再执行。并且return会返回它后面表达式的值,相当于把后面的值赋给函数,例如:

def function():
	print("aa")
	return "aaa"
	print("bb")

print(function())

运行结果:

aa
aaa

发现return后面的语句没有执行函数就退出了,并且函数自己也有值了。

到此这篇关于python 函数的详解与应用范例的文章就介绍到这了,更多相关python 函数内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python函数属性和PyC详解

    目录 函数属性 自定义属性 查看函数对象属性 属性和字节码对象PyCodeObject 总结 函数属性 python中的函数是一种对象,它有属于对象的属性.除此之外,函数还可以自定义自己的属性.注意,属性是和对象相关的,和作用域无关. 自定义属性 自定义函数自己的属性方式很简单.假设函数名称为myfunc,那么为这个函数添加一个属性var1: myfunc.var1="abc" 那么这个属性var1就像是全局变量一样被访问.修改.但它并不是全局变量. 可以跨模块自定义函数的属性.例如,

  • Python之基础函数案例详解

    函数就是把具有独立功能的代码块封装成一个小模块,可以直接调用,从而提高代码的编写效率以及重用性, 需要注意的是, 函数需要被调用才会执行, 而调用函数需要根据函数名调用  函数的定义格式: def 函数名(): 函数代码 使用当前文件的函数 我们直接定义一个函数然后运行程序, 函数并不会被调用 def hello(): print('hello') 想要函数被执行, 需要使用函数名来调用函数 # 定义函数 def hello(): print('hello') # 调用函数 hello()  需

  • Python类的高级函数详解

    __str__函数 如果定义了该函数,当print当前实例化对象的时候,会返回该函数的return信息 可用于定义当前类的描述信息 用法: def __str__(self): return str_type 参数:无 返回值:一般返回对于该类的描述信息 __getattr__函数 当调用的属性或者方法不存在时,会返回该方法定义的信息 用法: def __getattr__(self, key): print(something.-.) 参数: key: 调用任意不存在的属性名 返回值: 可以是

  • python imread函数详解

    Python 中各种imread函数的区别与联系 最近一直在用python做图像处理相关的东西,被各种imread函数搞得很头疼,因此今天决定将这些imread总结一下,以免以后因此犯些愚蠢的错误.如果你正好也对此感到困惑可以看下这篇总结.当然,要了解具体的细节,还是应该 read the fuck code和API document,但貌似python的很多模块文档都不是很全,所以只能多看代码和注释了. 先来看看常用的读取图片的方式: PIL.Image.open scipy.misc.imr

  • Python 函数装饰器详解

    目录 使用场景 授权(Authorization) 日志(Logging) 带参数的装饰器 在函数中嵌入装饰器 装饰器类 总结 装饰器(Decorators)是 Python 的一个重要部分.简单地说:他们是修改其他函数的功能的函数.他们有助于让我们的代码更简短,也更Pythonic(Python范儿).大多数初学者不知道在哪儿使用它们,所以我将要分享下,哪些区域里装饰器可以让你的代码更简洁.首先,让我们讨论下如何写你自己的装饰器. 这可能是最难掌握的概念之一.我们会每次只讨论一个步骤,这样你能

  • Python函数的作用域及内置函数详解

    目录 1.函数的作用域 2.函数的调用详解 3.内置函数 总结 1.函数的作用域 -- 内置 -- 全局,顶格写 -- 局部,函数内部 a = 34 #全局变量 def run(): b = 44 #局部变量 print(a) print(b) #不可以直接调用局部变量,报错 运行结果: c = 12 def run(a): print(a) b = 33 run(5) # 一个全局变量c # 两个局部变量a,b # 函数的参数也是局部变量 运行结果: 5 局部 VS 全局 -- 局部空间(函数

  • python的函数最详解

    目录 一.函数入门 1.概念 2.定义函数的语法格式 函数名 形参列表 返回值 3.函数的文档(注释→help) 4.举例 二.函数的参数 1.可变对象 2.参数收集(不定个数的参数) 3.解决一个实际问题 4.参数收集(收集关键字参数) 5.逆向参数收集(炸开参数) 6.参数的内存管理 7.函数中变量的作用域 8.获取指定范围内的变量 三.局部函数(函数的嵌套) 四.函数的高级内容 1.函数作为函数的形参 2.使用函数作为返回值 3.递归 五.局部函数与lambda 1.用lambda表达式代

  • 详解Python函数print用法

    print函数: Python中可以直接使用的函数,可以将信息展示在控制台 print()函数可以输出哪些内容? print()函数输出的内容可以是数字 #可以输出数字 print(520) print(98.6) print()函数输出的内容可以是字符串 #可以输出字符串 print('Hello World') print("Hello World") print()函数输出的内容可以是含有运算符的表达式 #可以输出含有运算符的表达式 print(3+1) print()函数可以将

  • python 函数的详解与应用范例

    目录 如何定义一个函数 如何使用 什么是参数 不定长参数 return是干什么 如何定义一个函数 函数也称方法,下面写一个简单的函数: def function(): print("我是函数.") 这是一个很简单的函数,函数只干了一件事,打印输出"我是函数."这句话. 从这个函数的外观看,有个def,还有个function加个()和:. def是定义函数的关键字不能改动,function为函数的名称,可以随便写,后加()和:这是规定. 在函数里面的输出语句可以称之为

  • python 装饰器详解与应用范例

    什么是装饰器 从字面意思上来看,装饰器是用来装饰其他东西的工具.在python中装饰器分为函数装饰器和类装饰器. 简而言之,函数装饰器是用来装饰函数的装饰器,其主要目的是增加目标函数的功能,类装饰器也就是装饰类的装饰器,增加类的功能. 函数装饰器 装饰器本质是嵌套函数 下面是一个简单的装饰器 # fun1为装饰器名称,function指的是被装饰的函数 def fun1(function): def fun2(): print("开始了!") function() # 执行被装饰的函数

  • 对Python函数设计规范详解

    Python函数的设计规范 1.Python函数设计时具备耦合性和聚合性 1).耦合性: (1).尽可能通过参数接受输入,以及通过return产生输出以保证函数的独立性: (2).尽量减少使用全局变量进行函数间通信: (3).不要在函数中直接修改可变类型的参数: (4).避免直接改变定义在另外一个模块中的变量: 2).聚合性: (1).每个函数都应该有一个单一的.目的统一的目标: (2).每个函数的功能都应该相对简单: 2.Python函数在脚本中应用示例 例1:将/etc/passwd文件中的

  • python strip() 函数和 split() 函数的详解及实例

     python strip() 函数和 split() 函数的详解及实例 一直以来都分不清楚strip和split的功能,实际上strip是删除的意思:而split则是分割的意思.因此也表示了这两个功能是完全不一样的,strip可以删除字符串的某些字符,而split则是根据规定的字符将字符串进行分割.下面就详细说一下这两个功能, 1 Python strip()函数 介绍 函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)       删除s字符串中开头.结尾处,位于 r

  • Python入门之三角函数sin()函数实例详解

    描述 sin()返回的x弧度的正弦值. 语法 以下是sin()方法的语法: importmath math.sin(x) 注意:sin()是不能直接访问的,需要导入math模块,然后通过math静态对象调用该方法. 参数 x--一个数值. 返回值 返回的x弧度的正弦值,数值在-1到1之间. 实例 以下展示了使用sin()方法的实例: #!/usr/bin/python import math print "sin(3) : ", math.sin(3) print "sin(

  • Python入门之三角函数tan()函数实例详解

    描述 tan() 返回x弧度的正弦值. 语法 以下是 tan() 方法的语法: import math math.tan(x) 注意:tan()是不能直接访问的,需要导入 math 模块,然后通过 math 静态对象调用该方法. 参数 x -- 一个数值. 返回值 返回x弧度的正弦值,数值在 -1 到 1 之间. 实例 以下展示了使用 tan() 方法的实例: #!/usr/bin/python import math print "tan(3) : ", math.tan(3) pr

  • Python的Lambda函数用法详解

    在Python中有两种函数,一种是def定义的函数,另一种是lambda函数,也就是大家常说的匿名函数.今天我就和大家聊聊lambda函数,在Python编程中,大家习惯将其称为表达式. 1.为什么要用lambda函数? 先举一个例子:将一个列表里的每个元素都平方. 先用def来定义函数,代码如下 def sq(x): return x*x map(sq,[y for y in range(10)]) 再用lambda函数来编写代码 map(lambda x: x*x,[y for y in r

  • python中强大的format函数实例详解

    python中format函数用于字符串的格式化 自python2.6开始,新增了一种格式化字符串的函数str.format(),此函数可以快速处理各种字符串. 语法 它通过{}和:来代替%. 请看下面的示例,基本上总结了format函数在python的中所有用法 #通过位置 print '{0},{1}'.format('chuhao',20) print '{},{}'.format('chuhao',20) print '{1},{0},{1}'.format('chuhao',20) #

  • Python中flatten( )函数及函数用法详解

    flatten()函数用法 flatten是numpy.ndarray.flatten的一个函数,即返回一个一维数组. flatten只能适用于numpy对象,即array或者mat,普通的list列表不适用!. a.flatten():a是个数组,a.flatten()就是把a降到一维,默认是按行的方向降 . a.flatten().A:a是个矩阵,降维后还是个矩阵,矩阵.A(等效于矩阵.getA())变成了数组.具体看下面的例子: 1.用于array(数组)对象 >>> from n

  • 对python中的six.moves模块的下载函数urlretrieve详解

    实验环境:windows 7,anaconda 3(python 3.5),tensorflow(gpu/cpu) 函数介绍:所用函数为six.moves下的urllib中的函数,调用如下urllib.request.urlretrieve(url,[filepath,[recall_func,[data]]]).简单介绍一下,url是必填的指的是下载地址,filepath指的是保存的本地地址,recall_func指的是回调函数,下载过程中会调用可以用来显示下载进度. 实验代码:以下载cifa

随机推荐