简单谈谈Python中函数的可变参数

yipeiwu_com5年前Python基础

前言

在Python中定义函数,可以用必选参数、默认参数、可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数。

可变参数( * )

可变参数,顾名思义,它的参数是可变的,比如列表、字典等。如果我们需要函数处理可变数量参数的时候,就可以使用可变参数。

我们在查看很多Python源码时,经常会看到 某函数(*参数1, **参数2)这样的函数定义,这个*参数和**参数就是可变参数,一时会让人有点费解。其实只要把函数可变参数的定义搞清楚了,就不难理解了。

当我们不知道需要用几个参数来定义函数的时候,可变参数就可以大展手脚了。

在Python里,带 * 的参数就是用来接受可变数量参数的。

如果一个函数定义如下:

def functionTest(*args): 
 .... 
 .... 
 ....

调用时我们可以的这样调用:

functionTest(1) 
或者 
functionTest(1,2) 
或者 
functionTest(1,2,3)

后面可以传入多个参数。

看段实例代码,观察下*是怎么具体应用的吧:

def get_sum(*numbers): 
 sum = 0 
 for n in numbers: 
  sum += n 
 return sum 
  
#在这里写下你的代码来调用get_sum来求5个数字的和,并输出这个结果 
print (get_sum(1,2,3,4,5))

结果会是什么呢?大家可以自己动手操作起来看下,以就是关于Python中函数可变参数的全部内容,希望这篇文章对大家学习或使用python能有所帮助,如果有疑问可以留言交流。

相关文章

python实现马耳可夫链算法实例分析

本文实例讲述了python实现马耳可夫链算法的方法。分享给大家供大家参考。具体分析如下: 在《程序设计实践》(英文名《The Practice of Programming》)的书中,第...

使用Python脚本生成随机IP的简单方法

需求 在某应用中,需要根据一定的规则生成随机的IP地址,规则类似于192.168.11.0/24这样的CIDR形式给出。 实现 经过艰苦卓绝的调试,下面的代码是可以用的: RAND...

python的dataframe转换为多维矩阵的方法

python的dataframe转换为多维矩阵的方法

最近有一个需求要把dataframe转换为多维矩阵,然后可以使用values来实现,下面记录一下代码,方便以后使用。 import pandas as pd import numpy...

Django框架创建mysql连接与使用示例

本文实例讲述了Django框架创建mysql连接与使用。分享给大家供大家参考,具体如下: 对于Django新手,你刚开始可以不使用MySQL数据库,但一定要学会如何配置使用MySQL。D...

Eclipse中Python开发环境搭建简单教程

Eclipse中Python开发环境搭建简单教程

一、背景介绍   Eclipse是一款基于Java的可扩展开发平台。其官方下载中包括J2EE方向版本、Java方向版本、C/C++方向版本、移动应用方向版本等诸多版本。除此之外,Ecli...