函数的定义,函数传参,函数的调用

1、函数的定义,及函数的调用

def hello():   #定义函数 def:函数   hell0:函数名
    pass       #函数体

hello()        #调用函数

2、函数传参

a、只有形参、实参,没有返回值的情况

def hello1(password):   #password 是拿参数的,如果这里有值必须要传值进来的  password:形参,形式参数
    pass       #函数体

hello("password")        #调用函数   "password":实际参数
b、有形参、实参、返回值的情况
def hello1(password):   #password 是拿参数的,如果这里有值必须要传值进来的  password:形参,形式参数
    print(1)      #函数体
    return False   #返回值

A=hello("password")        #需要有人接住函数里面的返回值
必填参数  
eg(file_name)就是此函数必填参数
def open_def(file_name, content=None):
    if content:
        write_file()
    else:
        read_file()

open_def("a.txt", "name")
默认值参数
eg、(content=None)是此函数默认值参数,非必参数参数可不传,默认时为None
def open_def(file_name, content=None):
    if content:
        write_file()
    else:
        read_file()

open_def("a.txt", "name")
参数组:参数:传多个参数,使用一个形参来接   *args
eg: 传参:send(100,200,'你好')  形参:*args
def send(*args):
    for i in args:
        print('发短信给%s'%i)
send(100,200,'你好')
'''
返回:
发短信给100
发短信给200
发短信给你好
'''
关键字参数 它不是必须,不限制参数的个数

def send(**kwargs):
    # for i in info:
        print(kwargs)
send()
send(ds='你好1')
send(wy='你好',fd='幸福')
'''
返回
{}
{'ds': '你好1'}
{'wy': '你好', 'fd': '幸福'}
'''

 

使用拆包方法传参
def hhh(name,age,sex):
    print(name)
    print(age)
    print(sex)

d={'name':'xh','age':18,'sex':'nan'}
hhh(**d)   #拆包方法变为name=xh,age=18, sex=nan


l=['xh',18,'nan']
hhh(*l)   #拆包方法变为name传'xh',age传18,。。。

参数的位置顺序:

按照1->2->3->4
1、必填参数
2、默认值参数
3、参数组
4、关键字参数

注意:使用顺序为:必填参数、默认值参数、可变参数、关键字参数

eg:def t1(word,name="None",*args,**kwargs)

函数传参

1、(*args) : *可变参数,多个参数时可写*名字,可以不传 ,可以传多个参数

2、(name="None")  可以不传,默认值参数

3、(**kwargs) 字典格式 key:values格式 关键字参数 (**info): kwargs可以随意起名字

4、(word) 位置参数,必传参数

 

3、接参

return 作用
1、函数遇到return,函数立即结束,不继续往下执行
2、return 返回数据
3、如果一个函数没有写返回值,返回的就是None
4、如果函数有多个返回值,那么返回的是一个元组,可以使用一个人来接,可以使用3个人来接

eg:
def test():
    print("hello")

a=test()
print(a)  没有return返回值,默认返回为None

def test2():
    return 1,2,3
a=test2()  #一个人来接
a,b,c=test2()  #可以使用一个人来接,可以使用3个人来接(3个人来接)
print(a,b)

 

4、函数的变量

变量分为两种:1、全局变量,2、局部变量
1、全局变量:使用范围是这个python文件
2、局部变量:使用范围是在函数内部使用

找变量顺序:首先在函数内部找,再到全局变量里面找
变量作用域:全局变量是这个python文件,局部变量是在函数内部使用

注:
1、改变全局变量时list、dict、set不需要用global来声明了
2、str、int、float、tuple、bool 需要使用global来声明

 

posted @ 2019-10-19 11:28  遇见最好的你_juan  阅读(329)  评论(0编辑  收藏  举报