Python可变参数用法实例分析

yipeiwu_com6年前Python基础

本文实例讲述了Python可变参数用法。分享给大家供大家参考,具体如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import math
def calc(*numbers):
  sum=0
  for n in numbers:
    sum+=n**2
  return sum
print(calc(1,2,3))
print(calc(1,3,5,7))
print(calc())

运行效果图如下:

定义可变参数和定义一个list或tuple参数相比,仅仅在参数前面加了一个*号。在函数内部,参数numbers接收到的是一个tuple,因此,函数代码完全不变。但是,调用该函数时,可以传入任意个参数,包括0个参数。

Python允许你在list或tuple前面加一个*号,把list或tuple的元素变成可变参数传进去:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import math
def calc(*numbers):
  sum=0
  for n in numbers:
    sum+=n**2
  return sum
nums = [1,2,3]
print(calc(*nums))

运行效果图如下:

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python多线程下载文件的方法

本文实例讲述了Python多线程下载文件的方法。分享给大家供大家参考。具体实现方法如下: import httplib import urllib2 import time from...

利用arcgis的python读取要素的X,Y方法

如下所示: import arcpy ... from arcpy import env ... env.workspace="C:\\Users\\Administrator\\D...

Windows下实现Python2和Python3两个版共存的方法

一直用的是python2,从python 2.3到python 2.7.6, 出于想了解python3的新特性,又安装了python3.3.3. 用了才发现蛮方便的。python的各个版...

Python assert关键字原理及实例解析

这篇文章主要介绍了Python assert关键字原理及实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Python asse...

python 快速排序代码

复制代码 代码如下: def quick_sort(ls): return [] if ls == [] else quick_sort([y for y in ls[1:] if y...