知行编程网知行编程网  2023-01-05 01:30 知行编程网 隐藏边栏  5 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于Python怎么传递不定参数的相关知识,包括参数的传递两种方式,以及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

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享