python 函数编程的位置参数、默认参数、关键字参数以及函数的递归

首先对于函数调用:

!usr/bin/env python
_*_ coding:utf-8 _*_
def  AQA(INPUT):
    if INPUT=='hello world':
        #在输入正确的情况下,不想让其调用hello_again()函数,
        #法一: 可利用返回值(return)进行判断
        #法二:可将函数放在else下执行
        print('你好,世界')
        return 'right'
    else:
        print('世界毁灭了')
        return 'wrong'   #如果retrun放在世界毁灭的前面则不会执行print
        #hello_again()#法二

def hello_again():
    print('大不了从头再来')
if __name__=='__main__':
    INPUT=input('\033[1;31;40m请输入您的问好语:')
    res=AQA(INPUT)
    #法一
    if res=='wrong':
        hello_again()
    else:
        print('hello boy')

结果如下:具体可以自行修改参数测试
这里写图片描述

**

其次关于位置参数与关键参数的设置:

**
注意关键参数是转化为dict(key对应value),位置参数是元组形式

#函数式变成

def fun(start,end='2017',where='shanghai'):
      print(start,'_',end,where)

if __name__=='__main__':
      print('')
      fun(2000,2012)
      fun(2000,where='beijing',end=2006)

python 函数编程的位置参数、默认参数、关键字参数以及函数的递归_第1张图片
其他方面可以参考博客:
python 函数编程的形参、实参、位置参数、默认参数、关键字参数以及函数的递归

可变参数:

#可变参数*  代表将参数处理成列表
#可变参数**  代表将参数处理成字典,如果直接定义一个字典直接调用需要show2(**dict)必须含有两个**

def show1(*args):
      for item in args:
            print(item)
show1('a','b','v')

def  show2(**kwargs):
      for item in kwargs.items():
            print(item)
show2(name='zhongguo',age='56')

python 函数编程的位置参数、默认参数、关键字参数以及函数的递归_第2张图片

你可能感兴趣的:(python)