这篇文章将为大家详细讲解有关python不定长参数进行传递的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
python中的不定长位置参数
使用*arg_name定义的位置参数,表示任意多个位置参数;Python标准库中习惯使用*args来命名不定长位置参数,当然我们可以自定义 这个名称;不定长位置参数的类型为元组;
Python 允许在形参前面添加一个星号(*),这样就意味着该参数可接收多个参数值,多个参数值被当成元组传入。
下面程序定义了一个形参个数可变的函数:
# 定义了支持参数收集的函数 def test(a, *books) : print(books) # books被当成元组处理 for b in books : print(b) # 输出整数变量a的值 print(a) # 调用test()函数 test(5 , "php中文网" , "Python教程")
运行上面程序,将看到如下运行结果:
('php中文网', 'Python教程') php中文网 Python教程 5
从上面的运行结果可以看出,当调用 test() 函数时,books 参数可以传入多个字符串作为参数值。从 test() 的函数体代码来看,参数收集的本质就是一个元组: Python 会将传给 books 参数的多个值收集成一个元组。
Python 允许个数可变的形参可以处于形参列表的任意位置(不要求是形参列表的最后一个参数),但 Python 要求一个函数最多只能带一个支持“普通”参数收集的形参。例如如下程序:
# 定义了支持参数收集的函数 def test(*books ,num) : print(books) # books被当成元组处理 for b in books : print(b) print(num) # 调用test()函数 test("php中文网", "Python教程", num = 20
关于python不定长参数进行传递的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。