函数的作用

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. 附加题2 :git 简单练习

    目的: 练习git 基本操作 理解版本管理 Task 1:在码云上新建一个项目,项目命名 『Helloworld』 ,设置为公开访问. step 0: 在你计算机安装git.参照互联网教程<gi ...

  2. Centos安装Grafana

    下载:https://grafana.com/grafana/download $ wget wget https://s3-us-west-2.amazonaws.com/grafana-relea ...

  3. 2.第一个ASP.NET MVC 5.0应用程序

    大家好,上一篇对ASP.NET MVC 有了一个基本的认识之后,这一篇,我们来看下怎么从头到尾创建一个ASP.NET MVC 应用程序吧.[PS:返回上一篇文章:1.开始学习ASP.NET MVC] ...

  4. [UWP]缓存Lottie动画帧

    在上一篇博文<[UWP]在UWP平台中使用Lottie动画>中我简单介绍了一下LottieUWP项目以及如何使用它呈现Lottie动画,这篇文章里我们来讲点进阶的东西--缓存Lottie动 ...

  5. 背水一战 Windows 10 (90) - 文件系统: 获取 Package 中的文件, 可移动存储中的文件操作, “库”管理

    [源码下载] 背水一战 Windows 10 (90) - 文件系统: 获取 Package 中的文件, 可移动存储中的文件操作, “库”管理 作者:webabcd 介绍背水一战 Windows 10 ...

  6. 47_并发编程-线程python实现

    一.Threading模块   1.线程的创建 - 方式一 from threading import Thread import time def sayhi(name): time.sleep(2 ...

  7. 从文本中读取字符——feof函数问题

    feof()函数 函数原型:int feof(FILE *fp): 函数功能:检测流上的文件结束符,如果文件结束,则返回非0值,否则返回0,文件结束符只能被clearerr()函数清除 (函数feof ...

  8. Android数据存储之SQLite使用

    SQLite是D.Richard Hipp用C语言编写的开源嵌入式数据库引擎.它支持大多数的SQL92标准,并且可以在所有主要的操作系统上运行. 在Android中创建的SQLite数据库存储在:/d ...

  9. 使用 JSON-lib 出现异常 java.lang.reflect.InvocationTargetException

    我是在使用json时引起的这个异常,上面是使用json-lib用到的几个jar包,原因是在commons-lang3-3.1.jar这个jar上,commons-lang3和commons-lang会 ...

  10. Create-React-App项目外使用它的eslint配置

    概述 使用Create-React-App脚手架感觉它的eslint配置有点好用,于是考虑不用Create-React-App脚手架该怎么使用这些配置. 我于是eject了Create-React-A ...