• 调用函数


    #在程序设计中,函数是指用于进行某种计算的一系列语句的有名称的组合。定义函数时,需要指定函数的名称并编写一系列程序语句,之后可以使用名称‘调用’这个函数。
    #前面已经了解了函数调用,例如:
    1 >>> print('hello world')
    2 hello world
    3 >>> type('hello')
    4 <class 'str'>
    5 >>> int(12.1)
    6 12
    以上代码就是函数的调用。函数括号中的表达式称之为函数的参数。函数‘接收’参数,并‘返回’结果,这个结果称为返回值(return value)。比如上面的示例中的int*(12.1),12.1就是接收的参数,得到的结果是12,12就是返回值。
    #Python3内置了很多有用的函数,可以直接调用。要调用一个函数,就需要知道函数的名称和参数,比如求绝对值的函数abs只有一个参数。可以直接从Python的官方网站查看文档:https://docs.python.org/3/library/functions.html
    #进去官方网站可以看到,这里显示了Python3内置的所有函数,abs()函数在第一个位置
    #单机abs()函数,页面会跳到如下图所示的位置,有对abs()函数的说明。图中的意思是:返回一个数的绝对值,参数可能是整数或浮点数。如果参数是一个复数,就返回他的大小。
    #除了到Python官方网站查看文档,还可以在交换式命令行通过help(abs)查看abs的函数帮助信息。示例如下:
    1 >>> help(abs)
    2 Help on built-in function abs in module builtins:
    3  
    4 abs(x, /)
    5 Return the absolute value of the argument.
    #可以看到,输出了对应的帮助信息,但是没有官方网站的详细。
    #下面实际操作abs()函数,在交互模式输入:
    1 >>> abs(20)
    2 20
    3 >>> abs(-20)
    4 20
    5 >>> abs(3.14)
    6 3.14
    7 >>> abs(3.14)
    8 3.14
    #从上面的输出结果可以看到,abs函数用于求绝对值。
    #调用abs()函数时,如果传入的参数数量不对,就会报TypeError的错误,Python会明确告诉你:abs()有且只有一个参数,但给出了两个,例如:
    1 >>> abs(7,8)
    2 Traceback (most recent call last):
    3 File "<pyshell#19>", line 1, in <module>
    4 abs(7,8)
    5 TypeError: abs() takes exactly one argument (2 given)
    #如果传入的参数数量是对的,但参数类型不能被函数接收,也会报TypeError的错误。给出错误信息:str是错误的参数类型,例如:
    1 >>> abs('hello')
    2 Traceback (most recent call last):
    3 File "<pyshell#20>", line 1, in <module>
    4 abs('hello')
    5 TypeError: bad operand type for abs(): 'str'
    #函数名其实是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当于给这个函数起了一个’别名‘,在交换式输入如下:
    1 >>> target=abs #变量target指向abs函数
    2 >>> target(-5) #通过变量target调用abs函数
    3 5
    4 >>> target(3.14) #通过变量target调用abs函数
    5 3.14
    6 >>> target(-3.14) #通过变量target调用abs函数
    7 3.14
    #调用Python中的函数时,需要根据函数定义传入正确的参数。如果函数调用出错,就要会看错误信息。
     
  • 相关阅读:
    我的.emacs配置文件
    C语言夜未眠5——变量前缀代表的含义
    c语言夜未眠4——对某一位或几位进行反转
    指针也可这么玩:返回局部指针变量,局部噢
    lua学习之table类型
    10个最“优秀”的代码注释
    为什么我希望用C而不是C++来实现ZeroMQ
    c语言夜未眠2——实现撤销和重做
    emacs学习笔记(基本概念)
    flutter json_serializable
  • 原文地址:https://www.cnblogs.com/DLHe/p/7753867.html
Copyright © 2020-2023  润新知