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多线程ctrl+c退出问题解决方案

场景: 经常会遇到下述问题:很多io busy的应用采取多线程的方式来解决,但这时候会发现python命令行不响应ctrl-c 了,而对应的java代码则没有问题: 复制代码 代码如下:...

python矩阵的转置和逆转实例

如下所示: # 矩阵的转置 def transpose(list1): return [list(row) for row in zip(*list1)] list1 = [[...

python 读取视频,处理后,实时计算帧数fps的方法

实时计算每秒的帧数 cap = cv2.VideoCapture("DJI_0008.MOV") #cap = cv2.VideoCapture(0) # Define the...

Python Selenium 之数据驱动测试的实现

Python Selenium 之数据驱动测试的实现

数据驱动模式的测试好处相比普通模式的测试就显而易见了吧!使用数据驱动的模式,可以根据业务分解测试数据,只需定义变量,使用外部或者自定义的数据使其参数化,从而避免了使用之前测试脚本中固定的...

python 输出上个月的月末日期实例

如下所示: import dateutil def before_month_lastday(ti): today=dateutil.parser.parse(str(ti))...