一、函数定义

  def 函数名(形参1,形参2...):

    函数体

    return 返回值         (可以返回任何东西,一个值,一个变量,或是另一个函数的返回值,如果函数没有返回值,可以省略return语句)

二、函数文档概念

  在Python中将函数体内首行字符串作为函数文档,字符串中对函数的功能和参数的含义进行说明,可以使用函数名加成员操作符跟上__doc__的形式返回这个字符串以备使用者查看,也可以通过help(函数名)形式直接打印除这个字符串

 def function():
'这是函数文档说明,不是定义的字符串'
print("这是一首简单的小程序!") >>> print(function.__doc__)
这是函数文档说明,不是定义的字符串
 >>> def function():
"""这是函数文档说明,不是定义的字符串"""
print("这是一首简单的小程序!")
>>> print(function.__doc__)
这是函数文档说明,不是定义的字符串 >>> def function():
"这是函数文档说明,不是定义的字符串"
print("这是一首简单的小程序!")
>>> print(function.__doc__)
这是函数文档说明,不是定义的字符串 >>> def function():
'这是函数文档说明,不是定义的字符串'
print("这是一首简单的小程序!")
>>> print(function.__doc__)
这是函数文档说明,不是定义的字符串 >>> def function():
"""这是函数文档说明,不是定义的字符串"""
print("这是一首简单的小程序!")
>>> help(function)
Help on function function in module __main__: function()
这是函数文档说明,不是定义的字符串 >>> def function():
'这是函数文档说明,不是定义的字符串'
print("这是一首简单的小程序!")
>>> help(function)
Help on function function in module __main__: function()
这是函数文档说明,不是定义的字符串

三、关键字参数

  当函数定义时形参比较多时,调用函数时实参要与形参一一对应,所以这时我们可能会把实参和形参的顺序弄乱,所以,使用关键字参数可以有效地避免这一情况,调用时直接把实参值赋给相应的形参变量,这时候就不需要顺序一一对应了。

  格式:函数名(形参2=实参2,形参1=实参1)

 def function(name,action):
print("我的名字:%s"%name)
print("我会%s"%action) 未使用关键字参数:
function('跑','zz')
我的名字:跑
我会zz 使用关键字参数:
function(action='跑',name='zz')
我的名字:zz
我会跑

四、默认关键字参数

  在函数定义时,我们给形参赋初值,这样在调用的时候,不赋实参,函数也可以运行

 def function(name='柯珂柯珂',action='fly'):
print("我的名字:%s"%name)
print("我会%s"%action) >>> function()
我的名字:柯珂柯珂
我会fly
>>> function('zz','吃')
我的名字:zz
我会吃

五、收集参数

  1、收集参数在函数定义时,在参数前面多加一个  *(星号),表示该参数变量是一个元组类型,;

  2、当*不在所有参数的后面,不需要收集的参数,需要使用关键字指定,* 是不会收集带关键字的参数的;

  3、当需要收集带关键字的参数时,可以在定义函数时,在形参的前面使用  **(双星号),这样收集的参数会作为字典类型

 def function(*name,action):
print(name)
print("我会%s"%action) >>> function(1,2,3,4,5,6,action = 'fly')
(1, 2, 3, 4, 5, 6)
我会fly
>>> def function(**name):
print(name) >>> function(a = '柯盛涛',b = '柯珂柯珂',c = 12306)
{'a': '柯盛涛', 'b': '柯珂柯珂', 'c': 12306}

Python18之函数定义及调用,注释的更多相关文章

  1. Linux Shell函数定义与调用

    一.Shell函数定义格式 shell函数定义格式,各部分说明如下: [ function ]等中括号括起来部分----表示可选(即可有可无) your_function_name部分----为函数名 ...

  2. MATLAB循环和函数定义,调用

    格式不要括号,最后有end for 循环变量 = 表达式1:表 2:表 3 表1:初值     表2:步长      表3:终值 求圆周率:π/4=1 - 1/3 + 1/5 -1/7+...+(-1 ...

  3. JavaScript函数定义和调用 变量作用域

     本文是笔者在看廖雪峰老师JavaScript教程时的个人总结   JavaScript中函数定义可以是这样的格式 function 函数名(参数) {     函数体 } 也可以是这样的格式     ...

  4. javascript、jQuery函数定义和调用方法

    一.javascript 1.var aaa=function(){...} var 方式定义的函数,不能先调用函数,后声明,只能先声明函数,然后调用. 2.function aaa(){...} f ...

  5. PowerShell自定义函数定义及调用

    PowerShell是一种命令集,也有自己的语法定义及函数.本文主要介绍如何自定义powershell函数及如何调用,当初在写PowerShell自定义函数的时候查阅了很多资料都没找到如何调用自定义函 ...

  6. python 函数定义及调用

    1.什么是函数? 在程序中,函数就是具备某一功能的工具,事先将工具准备好即函数的定义:遇到应用场景拿来就用即函数的调用:函数必须遵循先定义后调用的原则 2.为什么要用函数 不用函数的问题是: 程序冗长 ...

  7. Shell 函数定义与调用

    linux shell 可以用户定义函数,然后在 shell 脚本中可以随便调用. 以一个计算两数之和的函数为例: #! /bin/bash # 函数定义 sum(){ return $(($1+$2 ...

  8. 函数定义和调用 -------JavaScript

    本文摘要:http://www.liaoxuefeng.com/ 定义函数 在JavaScript中,定义函数的方式如下: function abs(x) { if (x >= 0) { ret ...

  9. 3-12 Python函数定义与调用

    Python 函数 函数概念 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.如print() range()函数,但你也可以自己创建函 ...

随机推荐

  1. c和s标签

    <s:if test="#request.iflag=='fj'"> <a title="复检录入" href="javascrip ...

  2. @Scope("prototype")的正确用法——解决Bean的多例问题

    转自: https://www.jianshu.com/p/54b0711a8ec8 1. 问题,Spring管理的某个Bean需要使用多例   在使用了Spring的web工程中,除非特殊情况,我们 ...

  3. Leet Code 2.两数相加

    2.两数相加 题目描述 给出两个非空的链表用来表示两个非负的整数.其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字.如果,我们将这两个数相加起来,则会返回一个新的链表来表 ...

  4. windows 共享文件夹,和共享打印机

    达成的情形,目标主机上登陆用户设置密码,其他pc上需要目标主机的用户和密码才能访问其共享文件夹 步骤:1.目标主机,设置文件夹共享    在文件夹上右键-属性,点击共享选项卡,然后点击共享按钮,继续点 ...

  5. WebSocket——SuperWebSocket实现服务端和客户端

    WebSocket——SuperWebSocket实现服务端和客户端具体实现如下: 注:本作者是基于vs2019 enterprise版本,所有项目均为.Net Framwork4.7版本(因为Web ...

  6. centos7搭建maven私服

    Linux:CentOS7安装maven私服Nexus https://blog.csdn.net/plei_yue/article/details/78616267 搭建nexus3版的maven私 ...

  7. OptaPlanner 试验

    OptaPlanner - Constraint satisfaction solver (Java™, Open Source)https://www.optaplanner.org/ jboss/ ...

  8. [转]BigDecimal使用(整理)

    原文地址:https://www.jianshu.com/p/2947868d76eb 应用场景 大多数的商业计算中,一般采用java.math.BigDecimal类来进行精确计算.比如:货币 使用 ...

  9. iptables保存规则(ubuntu和centos)

    1.Ubuntu 首先,保存现有的规则: iptables-save > /etc/iptables.rules 然后新建一个bash脚本,并保存到/etc/network/if-pre-up. ...

  10. openresty开发系列29--openresty中发起http请求

    openresty开发系列29--openresty中发起http请求 有些场景是需要nginx在进行请求转发 用户浏览器请求url访问到nginx服务器,但此请求业务需要再次请求其他业务:如用户请求 ...