python 函数编程的位置参数、默认参数、关键字参数以及函数的递归
程序员文章站
2022-07-05 20:02:43
...
首先对于函数调用:
!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 函数编程的形参、实参、位置参数、默认参数、关键字参数以及函数的递归
可变参数:
#可变参数* 代表将参数处理成列表
#可变参数** 代表将参数处理成字典,如果直接定义一个字典直接调用需要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函数的参数的默认值所引发的问题的原因
-
python中函数的参数,返回值,变量,和递归等知识讲解
-
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
-
Python基础总结之第七天开始【认识函数的参数以及返回】(新手可相互督促)
-
Python函数的*和**两种参数的作用(可变参数和关键字参数)
-
python 函数编程的位置参数、默认参数、关键字参数以及函数的递归
-
Python中的函数(定义、调用、形参、实参、必选参数、默认参数、可变参数,关键字参数)
-
python 函数的关键字参数
-
函数的实参与形参(位置 / 默认 / 可变 / 关键字参数)
-
Python学习笔记(六)函数的参数、文档、内部函数以及闭包、匿名函数