函数的作用

1.减少重复代码

2.方便修改,更易扩展

3.保持代码一致性

函数的命名规则:

1.函数名必须以下划线或字母开头,可以包含任意字母,数字或下划线的组合,不能使用任何的标点符号。

2.函数名区分大小写。

3.函数名不能是保留字。

形参和实参

形参: 形式参数,不是实际存在的,是虚拟变量。

实参: 实际参数,调用函数时传给函数的参数,可以是常量,变量,表达式,函数,传给形参。

举个例子:

def add(x, y):             # 这里 add(x, y) 里面中的 x, y 就是形参
print(x + y) add(1, 2) # 调用 add(1, 2) 函数里面的 1, 2 就是实参 运行结果:
3

函数参数分类

1.必备参数:

必备参数必须按正确的顺序传入,数量与申明时一致。

def person(name, age):
print('My name is %s, age %d' %(name, age)) person('klvchen', 28) 运行结果:
My name is klvchen, age 28

2.关键字参数

函数使用关键字参数进行调用时,允许参数的顺序与声明时不一致。

def person(name, age):
print('My name is %s, age %d' %(name, age)) person(age = 28, name = 'klvchen') 运行结果:
My name is klvchen, age 28

3.默认参数

调用函数时,用户如果没有传入缺省的值,则被认为是默认值。默认参数只能放在最后。

def person(name, age, sex = 'male'):
print('My name is %s, age %d sex is %s' %(name, age, sex)) person(age = 28, name = 'klvchen') 运行结果:
My name is klvchen, age 28 sex is male

当用户需要传入非默认参数时:


def person(name, age, sex = 'male'):
print('My name is %s, age %d sex is %s' %(name, age, sex)) person('lily', 18, 'female') 运行结果:
My name is lily, age 18 sex is female

4.不定长参数

事先没有规定用户输入的参数数量。

(*args)只存放未命名的变量参数,用户输入的参数会组成元组方式传入。

def add(*args):
print(args)
total = 0
for i in args:
total += i
print(total) add(1, 2, 3) 运行结果:
(1, 2, 3)
6

(**kwargs)只存放命名的变量参数,用户输入的参数会组成字典方式传入。

def person(**kwargs):
print(kwargs)
for i in kwargs:
print("%s : %s" %(i, kwargs[i])) person(name='klvchen', job='IT') 运行结果:
{'name': 'klvchen', 'job': 'IT'}
name : klvchen
job : IT

(*args)和(**kwargs)配合一起使用即可以接受用户输入的全部参数:

def person( *args, **kwargs):
print(args)
print(kwargs)
print()
for l in args:
print(l)
for i in kwargs:
print("%s : %s" %(i, kwargs[i])) person(1, 2, 3, 4, name='klvchen', job='IT') 运行结果:
(1, 2, 3, 4)
{'name': 'klvchen', 'job': 'IT'} 1
2
3
4
name : klvchen
job : IT

函数的返回值

函数返回单个值

def test():
return 'hello world' result = test()
print(result) 运行结果:
hello world

函数返回多个值

def test():
return 1, [2, 3] result = test()
print(result)
运行结果:
(1, [2, 3])

注意:

1.如果函数没有 return 关键字,默认会返回 None

2.如果函数 return 多个值,Python 会把多个值组成一个元组返回

3.函数在执行过程中如果遇到 return 关键字就会停止执行并返回结果,return 代表着函数的结束

Python 函数介绍的更多相关文章

  1. Python开发【第三章】:Python函数介绍

    一. 函数介绍 1.函数是什么? 在学习函数之前,一直遵循面向过程编程,即根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复 ...

  2. 3 Python 函数介绍

    1.函数的基本概念 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 减少重复代码 使程序变的可扩展 使程序变得易维护 语法定义 def ...

  3. python函数介绍

    1.向函数传递信息 def greet_user(username): print('Hello,' + username.title() + '!') greet_user('jesse') 2.位 ...

  4. Python函数(1)

    一.Python函数介绍 函数时组织好的,可重复的,用来实现单一,或相关联功能的代码段. 函数的使用原则时先定义,后调用:事先准备工具的过程即函数的定义,遇到应用场景拿来当工具用即函数的调用. 函数的 ...

  5. python strip()函数 介绍

    python strip()函数 介绍,需要的朋友可以参考一下   函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除 ...

  6. python中multiprocessing.pool函数介绍_正在拉磨_新浪博客

    python中multiprocessing.pool函数介绍_正在拉磨_新浪博客     python中multiprocessing.pool函数介绍    (2010-06-10 03:46:5 ...

  7. python基础3之文件操作、字符编码解码、函数介绍

    内容概要: 一.文件操作 二.字符编码解码 三.函数介绍 一.文件操作 文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 基本操作: #/usr/bin/env ...

  8. Python的常用内置函数介绍

    Python的常用内置函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.取绝对值(abs) #!/usr/bin/env python #_*_coding:utf-8_ ...

  9. python 函数参数介绍

    python 函数参数介绍 python 使用过程总,总会遇到 *args,**kw形式的参数,总是一头雾水,而且网上介绍的或是叫法不一,为此专门深入实践进而了解了函数参数的使用 具体请看代码 #-* ...

随机推荐

  1. nlog 的手动配置

    使用nlog的时候,有时候需要手动配置.比如数据库链接和密码不配在文件里,或者统计配置在一个位置之类的. var config = new NLog.Config.LoggingConfigurati ...

  2. C# GroupBy分组的问题和解决

    起因 今天在公司做一个需求的时候,写的是面条代码,一个方法直接从头写到尾,其中用到了GroupBy,且GroupBy的KeySelector是多个属性而不是单个属性. 但是公司最近推行Clean Co ...

  3. Linux - 修改内核启动顺序及删除无用内核

    现象: CentOS7开机启动界面显示多个内核选项 原因: 正常情况下,有两个启动项,一个是"正常启动",另一个是"救援模式启动"(rescue). 如果启动项 ...

  4. Git本地上传到服务器

    Git本地上传到服务器 2018年05月17日 10:45:02 VV-King 阅读数:643 标签: git   1.本机window系统的话先下载msysgit  下载后在开始菜单里面找到 &q ...

  5. [原]ZolltyMVC框架简介

    ZolltyMVC框架是一款轻量级的Java应用编程框架(Java Application Framework),融合了常用的IOC/DI.MVC(注解.XML配置式.RESTful风格.模型驱动.视 ...

  6. 关于git的常用命令

    1.git add <name> 将工作区的内容添加到暂存区 2.git commit -m <备注> 将内容提交到暂存区 3.git status  查看状态 4.  git ...

  7. redis cluster集群web管理工具 relumin

    redis cluster集群web管理工具 relumin 下载地址 https://github.com/be-hase/relumin 只支持redis cluster模式 java环境 tar ...

  8. js禁止鼠标右键功能

    1.禁止指定元素 document.getElementById("active-intro").oncontextmenu = function () { event.retur ...

  9. XSS漏洞扫描工具:BruteXSS

    下载Brute,一个xss漏洞扫描工具:https://codeload.github.com/shawarkhanethicalhacker/BruteXSS/legacy.zip/master 我 ...

  10. Filebeat+Kafka+Logstash+ElasticSearch+Kibana 日志采集方案

    前言 Elastic Stack 提供 Beats 和 Logstash 套件来采集任何来源.任何格式的数据.其实Beats 和 Logstash的功能差不多,都能够与 Elasticsearch 产 ...