函数功能

八、函数功能

#函数:function  功能

'''

1.提高代码的重用率

2。提高开发效率

3.便于代码维护和管理

 

 

'''

 

#制作一个10行10列的星星

'''

def star():

    j = 0

    while j < 10:

 

        # 输出1行

        i = 0

        while i < 10:

            print('★', end='')

            i += 1

        # 换行

        print('\n', end='')

        # j自增

        j += 1

 

star()

print('----------------------')

star()

print('----------------------')

star()

'''

 

#定义函数的基本格式:

'''

def 函数名():

    python代码

    python代码

    python代码

    ...

 

'''

#本质上函数名就是变量而已

def myfunc():

    pass

 

print(myfunc,type(myfunc))

'''

1.推荐使用英文禁止使用中文

2.可以使用数字,但是不能以数字开头

3.不可以使用特殊字符,除了——

4.变量严格区分大小写

5.变量命名要有意义

6.不能和系统已知的关键字冲突!

7.不能和系统已存在的函数重名

'''


#函数

#关键字参数:在传入实参的时候制定接收的形参,这种方式就是关键字参数!

def chuanqi(wuqi,yifu,yaodai,xiezi,shouzhuo,jiezhi,xianglian):

    print('手上拿着',wuqi)

    print('身上穿着',yifu)

    print('腰上系着',yaodai)

    print('脚上穿着',xiezi)

    print('手腕戴者',shouzhuo)

    print('手指戴着',jiezhi)

    print('脖子上带着',xianglian)

 

 

#调用函数

chuanqi(yaodai='皮带',xiezi = '草鞋',wuqi = '宝刀',yifu = '霓裳羽衣',xianglian = '狗链',shouzhuo = '手镯',jiezhi = '戒指')


#计算任意个数字的和的函数(收集参数)

 

def mytotal(*no):

    #声明一个统计和的变量

    he = 0

    #遍历no的所有数据(内部是一个元祖)

    for i in no:

        he += i

 

    #循环结束后输出结果

    print(he)

 

 

#调用函数

mytotal(1,2,3,4,5,6,100,200)

 

 

#收集参数到底接收什么样的实参? 只有没有型参接收的实参,才会被收集参数接收!

 

 

def demo(a,b,c,*args):

    print(a,b,c)

    print(args)

 

#调用函数

demo(1,2,3,4,5,6,7,8)


#关键字收集参数

def mycar(**args):

    print(args)

 

 

#调用函数

mycar(chf = '拖拉机',jwd = '手扶拖拉机',wrd = '手推车' , gzj = '凯迪拉客' ,wtb = '购物车')

 

#计算任意个人的财产的和(必须以关键字参数方式传入实参)

 

def summoney(**persons):

    #print(persons)

    #累加变量

    total = 0

    #遍历字典中的所有数据

    for k,v in persons.items():

        total += v

 

    #打印结果

    print(total)

 

 

 

#调用函数

summoney(mqz = 2 ,gx = 12 ,zs = 250 ,wwz = 312 ,wfp = -2, gsb = 10 )

 

#关键收集参数,接收什么样的参数? 关键字收集参数也仅仅接收没有任何型参接收的关键字参数

def demo(a,b,c,**no):

    print(a,b,c)

    print(no)

 

#调用函数

demo(a = 10,c = 2,d = 5,e =7,f = 9,z = 8,p = 3,b = 12)


#测试普通形参,收集参数,关键字收集参数的共存问题。

#普通形参,收集参数,关键字收集参数 -> 都是形参

#普通实参,关键字参数             ->都是实参

 

#普通实参   ->可以被普通形参和收集参数接收!

#关键字参数 ->可以被普通形参和关键字收集参数接收!

 

def demo(a,b,c,*arg1,**arg2):

    pass

 

#调用函数

demo(10,20,50,d = 15 ,e = 55, f = 99,c = 8)

 

'''

1.三种形参可以在一个函数中共存!~

2.两种实参也可以在一个函数的调用中共存!

 

3.实参中,普通实参必须位于关键字实参之前!

4.实参中,不可以为同一个形参传送2个以上的值!(同一个形参只能接收一个实参,2个报错!)

 

5.收集参数可以在普通形参之前,也可以在普通形参之后!

6.收集参数必须在关键字收集参数之前!

7。普通形参只能出现在收集参数的前面或者后面!

 

 

 

'''




 

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值