欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python函数基础学习(定义、函数参数、递归函数)

程序员文章站 2022-07-16 23:39:23
1、本程序是测试函数的基础、函数的参数、递归函数的测试。函数的参数有:必选参数、默认参数、可变参数、命名关键字参数和关键字参数#!/usr/bin/python# -*- coding: utf-8 -*- #当程序存在中文时,注释表明使用utf-8编码解释 #函数学习print('函数定义')de... ......

1、本程序是测试函数的基础、函数的参数、递归函数的测试。

函数的参数有:

必选参数、默认参数、可变参数、命名关键字参数和关键字参数

#!/usr/bin/python
# -*- coding: utf-8 -*-
    #当程序存在中文时,注释表明使用utf-8编码解释

    #函数学习
print('函数定义')
def result(x,n=2):
    s = 1
    while n>0:
        n = n-1
        s = s*x
    return s
    #使用def定义一个函数,def 函数名(参数):
print(result(2,1))

print('*'*40)
print('测试默认参数')
def school(name,gender,age=6,city='beijing'):
    print('name=',name)
    print('gender=',gender)
    print('age=',age)
    print('city=',city)    
print(school('lingyunmu','man'))
    #默认参数,如果使用中间的默认参数,那么后面的需要加上key,也就是city
    #参数默认按顺序存取

print('*'*40)
print('列表追加元素')
def add_bye(l=none):
    if l is none:
        l = []
    l.append('goodbye')
    return l    
a = [1,2,3]
print(add_bye(a))
    #列表后面追加元素方法
del(a)

print('*'*40)
print('可变参数测试')
def sum(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n
    return sum        
print(sum(1,2,3,4,5,6,7))
print(sum(1,2,3))    
    #定义可变参数,计算和。使用*表示可变参数
print('list或tuple使用可变参数')
list1 = [1,2,3,4]
print(sum(*list1))
    #list或tuple加*,即可使用可变参数函数
del(list1)
del(sum)

print('*'*40)
print('关键字参数测试')
def persion(name,age,gender,**other):
    print('name:',name,'age:',age,'gender:',gender,'other:',other)
    
print(persion('lingyunmu',25,'man',city='beijing',interest='pingpang'))
print(persion('zhangsan',25,'man',ing='sleep'))
    #使用**定义关键字参数,在必要参数写完后可根据需求添加其它的参数。
print('使用字典将关键字传进去')
dic = {'city':'beijing','ing':'sleep'}
print(persion('lisi',32,'man',**dic))
    #在字典前加**即刻将字典作为关键字参数传进去
del(persion)

print('*'*40)
print('命名关键字参数测试')
def persion(name,age,*,city,job):
    print(name,age,city,job)
    return 0
print(persion('lingyunmu',25,city='beijing',job='computer'))
    #命名关键字参数,举例说明:就是注册账号时必填的选项。
del(persion)

    #说明:以上参数可任意组合,注意参数定义的顺序必须是:
    #必选参数、默认参数、可变参数、命名关键字参数和关键字参数。
print('*'*40)
print('递归函数测试')
def sum(n):
    if n == 1:
        return 1
    print(n,'+','sum(',n,'-1)')
        #查看递归执行的过程
    return n + sum(n-1)
print(sum(5))
    #计算前n项的和

del(sum)

读书和健身总有一个在路上