Python学习总结18:函数 参数篇

1. 判断函数是否可调用

>>> import math
>>> x = 1
>>> y = math.sqrt
>>> callable(x)
False
>>> callable(y)
True

注意 函数callable在Python 3.0中不再可用,需要使用表达式hasattr(func,  __call)__代替。

2. 函数(或类)解释

1)函数注释,以"#"开头注释

2)文档字符串,如果在函数的开头写下字符串,它就会作为函数的一部分进行存储,这称为文档字符串。

def square(x):
    ‘Calculates the square of the number x‘
    return x*x

>>> square.__ doc__
‘Calculates the square of the number x‘

>>> help(square)
Help on function square in module main:

square(x)
    Calculates the square of the number x.

3. 函数参数的传递方法

1)按函数参数顺序传递

def hello(greeting, name):
    return "%s,%s"%(greeting, name)
>>> hello(‘Hello‘, ‘World‘)
Hello, World

2) 使用关键字和默认值

def hello_1(greeting = ‘Hello‘, name = ‘World‘):
     print ‘%s, %s‘%(greeting, name)

>>>hello_1(name=‘Mei‘)
Hello, Mei
def hello_2(greeting, name = ‘World‘):
     print ‘%s, %s‘%(greeting, name)

>>>  hello_2(‘Hi‘)
Hi, World

3) 参数个数不定

def print_params(*params):
    print params

>>>print_ params(‘Testing‘)
(‘Testing‘,)
>>> print_params(1, 2, 3)
(1, 2, 3)

从上面的例子可以看出,打印的为元组。若与普通参数联合使用

def print_ params_2(title, *params):
    print title
    print params

>>> print_params_2(’Params:’ 1, 2, 3)
Params:
(1, 2, 3)
>>> print_params_2(’Nothing:’ )
Nothing:
()

但是不能处理关键字

>>>print_params_ 2(‘Hmm...’,something=42)
Traceback (most recent call last):
  File "<pyshell#60>",line 1, in?
    print_params_ 2(‘Hmm...‘,something=42)
TypeError: print_params_2() got an unexpected keyword argument ‘something‘

4) 参数个数不定,且能处理关键字

def print_ params_3(**params):
    print params

>>> print_params_ 3(x=1, y=2, z=3)
{‘z‘: 3, ‘x‘: 1, ‘y‘: 2}

返回的是字典

综上所有参数传递的方法,放在一起使用

def print_ params_4(x, y, z=3, *pospar, **keypar):
    print x, y, z
    print pospar
    print keypar

>>> print_params少(1, 2, 3,  5, 6, 7, foo=l, bar=2)
1 2 3
(5, 6, 7)
{foo:1, ‘bar‘: 2}
>>> print_params_4(1, 2)
1 2 3
()
{}
时间: 2024-11-08 23:29:11

Python学习总结18:函数 参数篇的相关文章

Python学习6.1_函数参数及参数传递

大多数编程语言都绕不开一个名词,那就是--函数(function).而函数很重要的部分则是参数(arguments)的使用.Python的参数传递总体来说是根据位置,传递对应的参数.阐述如下: 1.位置参数及传递: 位置参数:顾名思义位置参数是根据形参的位置先后顺序传入的. 如下:定义一个测试函数,传入三个参数,然后依次打印出这三个参数: def fun(first, second, third): print first, second, third if __name__ == '__mai

PYTHON学习0023:函数---参数----2019-6-17

参数作用:可以让函数更灵活,不只能做死的动作,还可以根据调用时传参的不同来决定函数内部执行流程.一.默认参数:以上函数中,countr这个形式参数,传入的实际参数基本都是"CN",就像我们在网站上注册,像国籍这种信息,用户不填写,默认就会是中国.就是通过默认参数实现的.那么把这个country变成默认参数很简单,写成如下即可:注意:默认参数必须放在位置参数最后面,否则影响传值. 二.关键参数:1.定义:正常情况下,给函数传参数要按顺序,不想按顺序就可以用关键参数,只需指定参数名即可.(

python学习之路----- 函数参数的实践应用

#以下函数允许计算两个数的乘积,请稍加改造,变成可接收一个或多个数并计算乘积: def product(*args): if len(args) == 0: raise ValueError("请输入至少一个数字") else: a = 1 for i in args: i*=a a = i return i print(product(100,100,100))执行结果: 1000000 Process finished with exit code 0 原文地址:https://w

python学习笔记之函数总结--高阶函数以及装饰器

python学习笔记之函数总结--高阶函数以及装饰器 Python特点: 1.不是纯函数式编程(允许变量存在): 2.支持高阶函数(可以传入函数作为变量): 3.支持闭包(可以返回函数): 4.有限度的支持匿名函数: 高阶函数: 1.变量可以指向函数: 2.函数的参数可以接收变量: 3.一个函数可以接收另一个函数作为参数: 下面我将示例一些函数的写法以及使用,并说明python中函数的特性: 1.基本的高阶函数示例: #!/usr/bin/env python def func():      

python 学习笔记 11 -- 使用参数使你的程序变得更性感

当然,在之前的系列中,我已介绍如何给 Python 脚本传参,当然,今天不会继续介绍这么无聊的东东.首先使用 python 的sys.argv 传参的话,就固定了参数的个数.顺序以及格式,这么死的规定如何性感? I have a dream , to make my code much sexer ! 今天我们简单介绍一下如何更加随性的给 python 脚本传参.效果如下: [email protected]:/tmp$ python arg.py -h NAME: project with u

OpenCV for Python 学习 (一 绘图函数)

本人的学习笔记主要记录的是学习opencv-python-tutorials这本书中的笔记 今天晚上简单学习OpenCV for Python如何绘图,主要用了这几个函数(这几个函数可在:http://docs.opencv.org/modules/core/doc/drawing_functions.html 找到): cv2.line(img, pt1, pt2, color[, thickness[, lineType[, shift]]]) cv2.circle(img, center,

python学习之路(基础篇)——函数

一.简单介绍 三种编程: 面向对象  class    面向过程   def    函数式编程   def 过程是没有返回值的函数 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 1.减少重复代码 2.使程序变的可扩展(改一处,都改) 3.使程序变得易维护 语法定义 def sayhi():#函数名 print("Hello, I'm nobody!") sayhi() #调用函数 可以带参数 二.函数的参数 1 def

[Python学习] 专题一.函数的基础知识

        最近才开始学习Python语言,但就发现了它很多优势(如语言简洁.网络爬虫方面深有体会).我主要是通过<Python基础教程>和"51CTO学院 智普教育的python视频"学习,在看视频中老师讲述函数知识的时候觉得非常不错,所以就写了第一篇Python学习的文章分享给大家.主要内容:         1.Python安装与基本输入输出,print()函数和raw_input()函数简单用法. 2.我根据视频中学到的知识,讲解函数的基本知识: (1).系统提

python学习之---匿名函数,返回函数,偏函数

1. 返回函数: 所谓的返回函数,指的是函数作为返回值.高阶函数除了可以接受函数作为参数外,同样可以接受函数作为结果返回.以下是一个可变参数的求和例子,一般求和函数是如此这般定义的: 1 >>> def sum(*args): 2 ... ax = 0 3 ... for x in args: 4 ... ax += x 5 ... return ax 6 ... 以上函数一旦定义,在调用这个函数的时候,只要传入参数就会立刻执行.但是,如果条件需要不要立刻求和,而是在后面的代码中,根据需