码迷,mamicode.com
首页 > 编程语言 > 详细

python之函数

时间:2019-05-04 00:17:14      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:方式   将不   man   一个   静态   类型   ==   需要   默认   

基本格式:

def  name():
      代码

name()   函数调用

返回值:

  返回值的几种情况:

 1 ,没有返回值 ,代码中没有return值,

  2 ,代码中只写了return , 时返回None , 当代码运行中遇到return时,后面代码将不再执行

# def func():
#     l = [金老板,二哥]
#     for i in l:
#         print(i)
#         if i==金老板:
#             return 
#     print(=*10)     #将不执行

 3 返回一个值, 可以返回任意数据类型

 4 返回多个值,同时返回几个值,需要有几个变量接受

  return  1,2  用多个变量去接受 r1,r2 = func()

注意:当返回多个值时,用一个变量去接受,将返回一个元祖

解包:
a,b,c = (1,2,3)
a,b,c = [a,b,c]

参数:

分类:

  1 形参: 形式参数,定义在函数中,用来接受参数

  2 实参: 实际参数, 定义在调用数,用于传递参数f("xiao")   # 为p传递参数 “xiao”

按传递方式分为:

  1 位置参数: 函数中定义的参数与调用变量中定义的参数一一对应

  2  关键字参数:  def  f(a,b):  调用 f(a= ‘xiao‘,b=12)

  3 默认参数,若不传递参数就用默认的,若传递了参数就用传递的

    def  f(a,b=‘man‘):   传递: f(‘xiao‘,b=‘nv‘)

按参个数分:

  1 静态参数: 有多少个形参,就需要定义多个实参

  2 动态参数:

    参数名前加* 一般用*args :  可以接受多个参数  def  f(*args) :  返回元祖

    **kwargs  可以接受按关键字传递参数,按关键字传递返回字典

      def  f(**kwargs):   f(a=1,b=3) 返回 {a:1,b:3}

定义顺序:先定义(位置参数,  动态*args   , 默认参数   **kwargs)

 def func(*args,default = 1,**kwargs):
#     print(args,kwargs)
#
# func(1,2,3,4,5,default=2,a = aaaa,b = bbbb,)
# def func(*args):#站在形参的角度上,给变量加上*,就是组合所有传来的值。
#     print(args)
#
# func(1,2,3,4,5)
# l = [1,2,3,4,5]
# func(*l)  #站在实参的角度上,给一个序列加上*,就是将这个序列按照顺序打散
# def func(**kwargs):
#     print(kwargs)
#
# func(a=1,b=2)
# d = {a:1,b:2} #定义一个字典d
# func(**d)

 

python之函数

标签:方式   将不   man   一个   静态   类型   ==   需要   默认   

原文地址:https://www.cnblogs.com/huxl1/p/10807106.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!