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设计】。

相关文章

Pytorch 实现自定义参数层的例子

注意,一般官方接口都带有可导功能,如果你实现的层不具有可导功能,就需要自己实现梯度的反向传递。 官方Linear层: class Linear(Module): def __in...

python删除列表内容

今天有点囧 a=['XXXX_game.sql', 'XXXX_game_sp.sql', 'XXXX_gamelog_sp.sql', 'XXXX_gamelog.sql'] fo...

python 获取微信好友列表的方法(微信web)

如下所示: import urllib import urllib2 import os import time import re import cookielib im...

Python 中pandas索引切片读取数据缺失数据处理问题

Python 中pandas索引切片读取数据缺失数据处理问题

引入   numpy已经能够帮助我们处理数据,能够结合matplotlib解决我们数据分析的问题,那么pandas学习的目的在什么地方呢? numpy能够帮我们处理处理数值型数据,但是这...

python3.7通过thrift操作hbase的示例代码

python3.7通过thrift操作hbase的示例代码

HBase是一个分布式的、面向列的开源数据库,其是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBas...