python之函数

本文深入探讨了Python中的函数,包括函数定义、参数传递、默认参数、可变参数以及参数类型定义。通过示例展示了如何使用`*args`和`**kwargs`处理可变数量的参数,并强调了函数返回值的重要性。同时,文章提到了对参数进行类型检查的必要性和相关示例,展示了类型检查在确保代码健壮性上的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.函数

def name(args...):

在这里插入图片描述

#coding:utf-8
def capitalize(data):
    index = 0
    temp = ''

    for item in data:
        if index ==0:
            temp = item.upper()
        else:
            temp += item
            index += 1
    print('for结束了')
    return temp
    print('finish')

result =capitalize(data = 'hello xiaomu')
print(result)


def message(message,message_type):
    new_message = '[%s] %s' %(message_type,message)
    print(new_message)

message(message='今天天气真好',message_type='info' )
print('message result', result)

print知识单纯的将对象打印,不支持赋值语句
return是对函数执行结果的返回,也支持赋值语句

2.函数参数
(1)默认参数

#coding:utf-8
def add(a,b,c=3) :
    return a+b+c
result = add(1,2)
print(result)

result = add(1,2,6)
print(result)

(2)不确定参数-可变参数
在这里插入图片描述

#coding:utf-8
def add(a,b,c=3) :
    return a+b+c
result = add(1,2)
print(result)

result = add               (1,2,6)
print(result)

def test_args(*args, **kwargs):
    print(args,type(args))
    print(kwargs,type(kwargs))
test_args(1,2,3,4,5,6,name='dewei',age=33,top=174)

def test_args_super(*args,**kwargs):
    if len(args) >=1:
        print(args[0])
    if 'name' in kwargs:
        print(kwargs['name'])
    else:
        print('no name')
test_args_super(1,name='dewei')
a= {'python','django'}
b= {'name':'dewei'}
test_args_super(a,b)

def add(a, b=1):
  print(a+b)
add(1,2)
add(1)
add(a=1,b=2)
#add(b=2) #会报错,a是必传参数

def test(a,b=1,*args):
    print(a,b,args)
s=(1,2)
test(1,2,*s)
#test(a=1,b=2,*s)

def test2(*args,a,b=1):
    print(a,b,args)

test2(a=1,b=2,*s)

def test3(a,b=1,**kwargs):
    print(a,b,kwargs)
test3(1,2,name = 'dewei')
test3(a=1,b=2,name ='dewei')
test3(name = 'dewei',age=33,a=1,b=2)

d = {'name':'小慕'}
test3(a=1,b=2,**d)
test3(**d,a=1,b=2)

(3)函数参数类型定义
在这里插入图片描述

def add(a:int,b:int=3):
    print(a+b)
add(1,2)
add('hello','小慕')

def test(a:int,b:int=3,*args:int,**kwargs:str):
    print(a,b,args,kwargs)

test(1,2,3,'4',name='小慕')
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值