Python实现接受任意个数参数的函数方法

yipeiwu_com5年前Python基础

这个功能倒也不是我多么急需的功能,只是恰好看到了,觉得或许以后会用的到。功能就是实现函数能够接受不同数目的参数。

其实,在C语言中这个功能是熟悉的,虽说实现的形式不太一样。C语言中的main函数是可以实现类似的功能的,可以通过这种方式实现一个支持命令行参数的程序。

先写一段python实现相应功能的示范代码:

defFuncDemo(*par):
  print("number of pars: %d" %len(par))
  print("type of par: %s" %type(par))
  i = 0
  if len(par) != 0:
    for p in par:
      i = i + 1
      print("%d par is:%s" %(i,p))

加载后运行测试交互记录:

>>>FuncDemo()
number of pars: 0
type of par:<class 'tuple'>
>>>FuncDemo(1,2,3)
number of pars: 3
type of par:<class 'tuple'>
1 par is: 1
2 par is: 2
3 par is: 3
>>>FuncDemo(1,2,3,'abc')
number of pars: 4
type of par:<class 'tuple'>
1 par is: 1
2 par is: 2
3 par is: 3
4 par is: abc

这基本上就是Python实现接受任意参数函数的方法以及应用,接下来小结一下相应的知识。

实现Python接受任意个数参数的函数,在形式上比较简单。就是在参数前面加上一个星号,这样相应的参数位置就能够接受任意个参数。相应的参数在函数中是一个元组,从上面交互的结果也能够看得出。

其实,这个功能还能能够支持字典的传入。如果是字典的传入,那么就需要传入成对儿的参数。

暂时看来,这个功能在我的工作以及生活中用处并不是很大,作为一个后备的功能再观其效吧!

以上这篇Python实现接受任意个数参数的函数方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Odoo中如何生成唯一不重复的序列号详解

前言 最近在做的项目中有一个需求是要让某个字段值根据记录产生的日期和一定的组合规则按顺序生成一个序列号,这个序列号不可重复,这原本是一个很常见的需求,没有多想就写好了。由于没有考虑到并发...

对python操作kafka写入json数据的简单demo分享

如下所示: 安装kafka支持库pip install kafka-python from kafka import KafkaProducer import json...

老生常谈Python之装饰器、迭代器和生成器

在学习python的时候,三大“名器”对没有其他语言编程经验的人来说,应该算是一个小难点,本次博客就博主自己对装饰器、迭代器和生成器理解进行解释。 为什么要使用装饰器 什么是装饰器?“装...

解决使用pycharm提交代码时冲突之后文件丢失找回的方法

解决使用pycharm提交代码时冲突之后文件丢失找回的方法

1: 更新代码时, 监测到本地代码改变,需要和合并,重启之后才可以, 选择No同时,代码会被冲掉,新增加的文件也会被冲掉, 但是pycharm有一个文件历史记忆,找到之后可以找到丢失的文...

python-str,list,set间的转换实例

实例如下: a = '123abbcc!@#' b = ['1', '2', '3', 'a', 'b', 'c', '!', '@', '#'] c = set(['a', '!...