Python参数传递的过程是怎样的,如何理解
Admin 2022-07-13 群英技术资讯 749 次浏览
这篇文章主要介绍了Python参数传递的过程是怎样的,如何理解相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python参数传递的过程是怎样的,如何理解文章都会有所收获,下面我们一起来看看吧。在这个用例中,我们要讨论的是关于函数的传参问题
我所使用的python版本为3.3.2
对于函数:
def fun(arg):
print(arg)
def main():
fun('hello,Hongten')
if __name__ == '__main__':
main()
当我们传递一个参数给fun()函数,即可打印出传递的参数值信息。
这里打印的信息为:
hello,Hongten
对于下面的用例:
def fun(a=1, b=None, c=None, *args):
print('{0},{1},{2},{3}'.format(a, b, c, args))
def main():
fun(a='one')
fun('one')
if __name__ == '__main__':
main()
当传递的参数为:fun(a='one')和fun('one')这样的传参都是把值复制给参数a,所有两种传参的效果是一样的:
one,None,None,()
one,None,None,()
当然我们也可以给参数:b,c,*args赋值
如:
def fun(a=1, b=None, c=None, *args):
print('{0},{1},{2},{3}'.format(a, b, c, args))
def main():
fun('one',1,2,('hongten'))
if __name__ == '__main__':
main()
这样我们就给参数:b,c,args赋上了值
运行效果:
one,1,2,('hongten',)
在上面的列子中,我们不能绕开参数*args前面的参数a,b,c给*args复制:
如:
def fun(a=1, b=None, c=None, *args):
print('{0},{1},{2},{3}'.format(a, b, c, args))
def main():
fun(args=('hongten'))
if __name__ == '__main__':
main()
运行效果:
Traceback (most recent call last):
File "E:/Python33/python_workspace/test_fun.py", line 21, in <module>
main()
File "E:/Python33/python_workspace/test_fun.py", line 18, in main
fun(args=('hongten'))
TypeError: fun() got an unexpected keyword argument 'args'
但是对于参数:a,b,c来说,是可以使用这样的方式进行赋值
如:
def fun(a=1, b=None, c=None, *args):
print('{0},{1},{2},{3}'.format(a, b, c, args))
def main():
fun(c=('hongten'), b=2, a=[1,2,3])
if __name__ == '__main__':
main()
运行效果:
[1, 2, 3],2,hongten,()
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
tfrecord是tensorflow中常用的数据打包格式,这篇文章给大家介绍的就是关于tfrecord文件的生成和读取,本文有具体以及步骤,具有的一定的参考价值,需要的朋友可以参考学习。
这篇文章主要介绍了Pytorch使用transforms,tansforms功能,通俗地讲,类似于在计算机视觉流程里的图像预处理部分的数据增强。下面来看看文章的具体内容介绍吧,需要的朋友可以参考一下
工作中需要将繁体中文转换成简体中文上网找了些资料,下面这篇文章主要给大家介绍了关于Python实现简繁体转换的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
今天给大家总结一下字符串的所有操作,string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等去空格及特殊符号s stri
这篇文章主要介绍了Python print函数:如何将对象打印输出,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008