`

Python中的函数定义及参数

 
阅读更多
1、函数必须先声明在使用,自定义函数采用关键字def,返回语句return,同时可以支持pass语句占位,标明函数为空函数:
#~ 函数
# 自定义求绝对值函数
def myAbs (x):
if not isinstance(x, (int, float)):
raise TypeError('Illigel argument.')
if (x > 0):
return x
else:
return -x
myAbs(1)
# 可以使用pass关键字,标明该函数什么事情也不做。主要用于函数占位
def passTest ():
pass
print('passTest() : ', passTest()) # 输出结果:passTest() : None
2、函数的默认参数:
默认参数必须在参数列表的最后定义,用于防止参数不匹配。当有多个默认参数,需要指定某一个默认参数的值时,可以带上参数的名称:
def power(x, n = 2):
s = 1
while n > 0:
n = n - 1
s = s * x
return s
s = power(2, 3)
d = power(2)
print('s = %s, d = %d' % (s, d)) # 输出结果: s = 8, d = 4
# 多个默认参数
def add(name, age, sex, province = '四川', city = '成都'):
print ('name = %s, age = %s, sex = %s, province = %s, city = %s' % (name, age, sex, province, city))
add('张三', 10, '男') # 输出结果:name = 张三, age = 10, sex = 男, province = 四川, city = 成都
add('李四', 9, "女", city = '广安') # 输出结果:name = 李四, age = 9, sex = 女, province = 四川, city = 广安

3、可变参数:
Python支持可变参数传递,采用前参数前边加一个星号(*)来标明参数类型是可变参数,可变参数实际上是采用tuple来接收参数信息,所以可以直接用for in循环遍历参数:
# 可变参数
# 定义求和参数
def sum(*number):
res = 0
for v in number:
res += v;
return res
print ('1 + 2 + 3 =', sum(1, 2, 3))
print ('1 + 2 =', sum(1, 2))
arg = [1, 2, 3, 4]
print ('1 + 2 + 3 + 4 =', sum(*arg))
4、关键字参数:
关键字参数用两个星号表示(**),内部自动组装成dict类型:
# 关键字参数
def reg(name, age, **other):
print ('register infomation : name %s, age %s, other %s' % (name, age, other))
# 注意这里的province、city为参数名称,而不是普通字符串
reg('dendy', 20, province = 'sc', city = 'cd') # 输出:register infomation : name dendy, age 20, other {'city': 'cd', 'province': 'sc'}
arg = {'province' : 'sc', 'city' : 'cd'}
reg('lily', 18, **arg) # 输出:register infomation : name lily, age 18, other {'province': 'sc', 'city': 'cd'}
5、各种参数的混合使用:
必选参数、默认参数、可变参数和关键字参数4种参数都可以混合使用,注意,参数定义的顺序必须是:必选参数、默认参数、可变参数和关键字参数
# 各种参数类型混合使用
def show(a, b, *args, **kw):
print ('%s, %s, %s, %s' % (a, b, args, kw))
show('haha', 'xixi', 'a', 'b', p1 = 'p1', p2 = 'p2') # 输出: haha, xixi, ('a', 'b'), {'p1': 'p1', 'p2': 'p2'}
arg = ('haha', 'xixi', 'a', 'b')
kw = {'p1' : 'p1', 'p2' : 'p2'} # 输出: haha, xixi, ('a', 'b'), {'p1': 'p1', 'p2': 'p2'}
show(*arg, **kw)
分享到:
评论

相关推荐

    在Python中居然可以定义两个同名通参数的函数

    #### Python中的函数定义与覆盖机制 在Python中,函数本质上是一个对象,可以通过赋值操作来创建。当在同一个作用域内定义两个同名函数时,实际上是在进行对象的重新赋值操作。也就是说,第二次定义会覆盖第一次...

    Python程序设计:函数参数.pptx

    我们将从本任务出发,较为系统的学习Python中函数的定义、调用、函数的形参定义、函数的参数传递以及匿名函数和生成器函数等内容,并掌握相关的配套案例。 任务 IQ智商测试 任务知识点 函数定于与调用 函数参数 匿名...

    python实验报告-函数定义和调用.doc

    首先,实验的目的是让学生熟悉Python中的函数定义语法、调用方法以及函数编程方法。在Python中,我们使用`def`关键字来定义一个函数,后跟函数名和圆括号,圆括号内可以包含函数参数。例如,`drawDigit(d)`函数接受...

    第六章Python函数习题及答案--中文

    本章节主要讲解了 Python 函数的基本概念和应用,包括函数的定义、函数的调用、函数的参数、函数的返回值等。通过实践习题和答案,读者可以更好地理解 Python 函数的使用和应用。 6.1 节定义函数:默认返回值 在 ...

    python函数声明和调用定义及原理详解

    Python中的函数声明和调用具有其独特的语法和原理,本文将详细介绍Python函数的声明与调用规则、参数传递方式以及其背后的执行原理。 首先,要定义一个函数,我们使用关键字def后跟函数名和括号,其中括号内可以...

    深入掌握Python中函数的关键字参数处理

    本文将详细介绍如何在Python函数中处理关键字参数,包括如何定义接受关键字参数的函数、如何在函数中使用**kwargs收集未明确命名的关键字参数,以及如何利用这些参数进行复杂的数据处理。 关键字参数是Python函数的...

    python函数实验报告.doc

    本实验报告主要涵盖了Python编程中的函数使用,包括函数的定义、参数传递、变量作用域以及模拟内置函数等多个方面。通过一系列的任务,旨在帮助学习者掌握Python函数的核心概念和实际应用。 1. **函数的定义与使用*...

    Python函数定义及使用.pptx

    Python 函数定义及使用 Python 函数是程序设计中极为重要的一部分,函数的定义和使用是 Python 编程的核心内容。本节将详细介绍 Python 函数的定义和使用,包括函数的理解、定义、参数传递、返回值、作用域、递归...

    Python函数参数定义及传递方式解析

    python中函数定义参数有四种形式: def fun1(a,b,c): pass def fun2(a=1,b=2,c=3): pass def fun3(*args): pass def fun4(**kargs): pass 四种中最常见是前两种,基本上一般点的教程都会涉及,后两种一般很少...

    深入理解Python中的函数定义与应用

    Python中的函数定义关键字是def,这是创建函数的第一步。本文将详细介绍如何使用def关键字定义函数,探讨函数的参数、返回值、作用域以及一些高级特性,并通过代码示例来加深理解。 函数是Python中非常重要的概念,...

    python中factor函数-Python基础教程.pdf

    - Python允许在函数定义时使用星号(*)和双星号(**)来收集不定数量的位置参数和关键字参数。 - 当调用函数时,使用`*`运算符可以将元组或列表的元素作为单独的参数传递,而`**`运算符可以将字典的键值对作为关键字...

    Python定义函数时参数有默认值问题解决

    这篇文章主要介绍了Python定义函数时参数有默认值问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在定义函数的时候,如果函数的参数有默认值,有两种...

    Python语言基础:函数的参数.pptx

    在Python编程语言中,函数是组织良好、可重复使用的代码块,它们接受输入(称为参数)并返回结果。本篇文章将深入探讨Python中函数参数的四种类型:必需参数、关键字参数、默认参数和不定长参数。 1. **必需参数**...

    Python中函数的参数定义和可变参数用法实例分析

    本文实例讲述了Python中函数的参数定义和可变参数用法。分享给大家供大家参考。具体如下: 刚学用Python的时候,特别是看一些库的源码时,经常会看到func(*args, **kwargs)这样的函数定义,这个*和**让人有点费解。...

    6.Python函数定义及使用.pptx

    在函数中,参数是传递给函数的值,它们在函数定义时声明为形参,在函数调用时提供实参。参数传递有两种方式:值传递和引用传递。在Python中,所有参数都是按需传递的,这意味着对于可变对象(如列表、字典),函数...

    Python函数中的默认参数:深入指南与实践应用

    本文将详细介绍如何在Python函数中使用默认参数,并通过实际的代码示例来展示其应用。 默认参数是Python函数的一个强大特性,它提供了一种灵活的方式来定义函数,使得函数调用更加方便和灵活。通过使用默认参数,...

    Python中的函数(课件)

    1. **位置参数**:按顺序传入,对应函数定义中的形参位置。 2. **关键字参数**:通过参数名指定,不依赖位置。 3. **默认值参数**:如果未在调用时提供值,将使用默认值。 4. **可变长度参数**:允许传递任意数量的...

    python函数的定义方式.docx

    Python函数的定义是编程中的核心概念,它允许程序员封装可重用的代码段,提高代码的组织性和效率。Python提供了多种定义函数的方式,包括无参数函数、带参数函数、默认参数函数以及可变参数函数。 1. **无参数函数*...

    Python中函数及默认参数的定义与调用操作实例分析

    本文实例讲述了Python中函数及默认参数的定义与调用操作。分享给大家供大家参考,具体如下: #coding=utf8 ''''' Python中的函数使用小括号调用。函数在调用之前必须先定义。 如果函数中没有return语句,就会自动...

    python函数的定义.doc

    6. **参数组合**:可以在一个函数定义中混合使用以上各种参数类型,但默认参数必须位于位置参数之后,命名关键字参数必须在所有其他参数之后。 例如,以下函数展示了各种参数类型: ```python def example(name, ...

Global site tag (gtag.js) - Google Analytics