python基础(六)函数

1.使用def进行函数定义,告诉python要进行接下来要写一个函数的函数名是什么。函数名后的括号里填可能需要的信息,最后以冒号结束。冒号后的缩进是函数体。name是形参,代表函数完成动作需要的那些信息。调用函数时携带的‘D’才是实参,是具体的信息。

def hello_world(name,act):
    """展示问候"""                   #文档字符串 注释
    print(name+" "+act+":Hello World!")
hello_world('D','say')             #调用函数
hello_world('C','shout')           #可以多次调用函数

传递实参有很多方法,形实顺序对应的位置实参法(见上),实参由变量名和值组成的关键字实参法(见下),还可以使用列表,字典等方法。

def hello_world(name,act):
    """展示问候"""                   #文档字符串 注释
    print(name+" "+act+":Hello World!")
hello_world(name='D',act='say')             #调用函数
hello_world(act='shout',name='C')           #不关心位置顺序

当某个实参每次都使用时,可以直接在形参上指定默认值。

def hello_world(name,act='say'):
    """展示问候"""                   #文档字符串 注释
    print(name+" "+act+":Hello World!")
hello_world(name='D')             #调用函数
hello_world(name='C',act='shout') #想改变预先设置的实参也可以      

一般函数都是处理一些事物,得到的结果可能不需要直白的输出,而是返回,供其他操作使用。函数返回的值就叫返回值,使用return可以将返回值返回到调用函数的代码

def get_name(firstname,lastname,minname=''):   #如果没有中间名可以将中间名形参放到最后且传空参
    """返回全名"""
    fullname = firstname+minname+lastname
    return fullname.title()

FUllname = get_name('D','C')        #调用返回值的函数需要一个变量储存返回值
print(FUllname)
FUllname = get_name('D','c','o')    
print(FUllname)

也可以返回字典 

def get_name(firstname,lastname,minname=''):   #minname是可选形参,默认为空
    """返回字典,包含的信息是全名"""
    people = {'fname':firstname,'lname':lastname}
    if minname:           
        people['minname'] = minname
    return people
Fname = get_name('D','o','C')
print(Fname)

一些情况下需要传递列表,如果函数对列表进行修改,那么就会永久生效,方便处理大量的数据。使用for或者其他方法可以使列表的每个值都经过处理。如果希望保留原始列表可以使用切片得到副本,使用方便进行处理操作。

def get_name(names):  

    for name in names:
        msg = "Hello"+name.title()
        print(msg)
Fname = ['D','o','C']
get_name(Fname)

有时候可能不知道有多少实参,那么需要使用如下代码。“*”告诉python创建一个空元组用来封装收到的值。如果函数要接收不同类型的实参,那么必须将接收任意量的形参放到最后,其他实参被接收后其余的都封装到其中。

def get_name(firstname,*lastnames):
    print("\nHer name is "+firstname)
    for lastname in lastnames:
        print(lastname)
get_name('Dracula','Claude')
get_name('David','a','b','c')

有可能知道要接收大量元素但不知道接收什么,那么可以将函数写为键值对,使用**创建空字典来储存。

def get_name(firstname,lastname,**other):
    file = {}
    file['fname'] = firstname
    file['lname'] = lastname
    for key,value in other.items():
        file[key] = value
    return file

ufile = get_name('Dracula','Claude',loc='a',id='001')
print(ufile)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

<千繁/>

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值