python函数概念
函数介绍
函数就类似与一个工具,作用就是在有需求时可以直接使用。
函数作用
1.精简代码,不需要重复写代码。
2.提高代码兼容性
3.提供返回值


函数语法结构
def 函数名(参数1, 参数2):
“““函数注释”””
函数体代码
return 返回值
1.def(必须)
def是定义函数的关键字,是必须的。
2.函数名(必须)
函数名就相当于变量名,命名规范与风格与变量名相同。
3.参数(非必须)
参数是可选的,并非必须。设置参数表示调用这个函数需要一点条件。
4.注释(非必须)
注释是对函数的介绍,提示函数的功能,没有并不影响函数运行。
5.函数体代码(必须)
函数体代码实现函数的功能,是函数核心的代码逻辑。
6.ruturn返回值(非必须)
使用函数后反馈给使用者的值,并非必须。

函数的调用
调用函数
使用函数名加括号就可调用,如果函数在定义阶段有参数则还需输入参数。
需要注意的是:函数必须先定义再调用,在定义阶段只检测语法而不执行,在调用阶段才会执行函数体代码。
原理
首先在内存空间中申请一块空间存储函数体代码,然后将函数体代码的内存地址绑定给函数名,最后用函数名加括号执行函数体代码。

函数的分类
1.内置函数
python解释器自带的已经定义好的函数,可以直接调用。
2.自定义函数
指程序员自己写的函数
2.1 无参函数
无参函数指的是定义时没写参数的函数,在调用时无需输入参数。
def my_func():
print('这个是无参函数')
2.2有参函数
有参函数指在定义阶段是在括号内加了参数的函数。
def my_func(a,b):
print('这个是有参函数')
2.3空函数
指函数体代码为空的函数。
空函数本身没有含义,是为了提前规划编程的思路
def my_func():
pass

python函数概念的更多相关文章
- python——函数的基本概念
Python函数认识 数学定义 y = f(x), y是x的函数,x是自变量. python中的函数组成 由若干语句组成的语句块.函数名称.参数列表构成,函数是组织代码的最小单元 像一个黑盒子,我们给 ...
- python基础语法_9-0函数概念
http://www.runoob.com/python3/python3-function.html 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代 ...
- Python入门笔记(18):Python函数(1):基础部分
一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/archive/2011/08/29/2153871.html 一般程序设计语言包含两种基本的抽象:过 ...
- python函数的参数传递问题---传值还是传引用?
摘要:在python中,strings, tuples, 和numbers是不可更改的对象,而list,dict等则是可以修改的对象.不可更改对象的传递属于传值,可更改对象属于传引用.想要在函数中传递 ...
- Python 函数返回值
本章详细介绍 返回值: 0x 00 返回值简介 0x 01 指定返回值与隐含返回值 0x 02 return 语句位置与多条 return 语句 0x 03 返回值类型 0x 04 函数嵌套 0x 0 ...
- python——函数
python--函数 1.介绍: 在过去的十年间,大家广为熟知的编程方法无非两种:面向对象和面向过程,其实,无论哪种,都是一种编程的规范或者是如何编程的方法论.而如今,一种更为古老的编程方式:函数式编 ...
- 理解Python闭包概念
闭包并不只是一个python中的概念,在函数式编程语言中应用较为广泛.理解python中的闭包一方面是能够正确的使用闭包,另一方面可以好好体会和思考闭包的设计思想. 1.概念介绍 首先看一下维基上对闭 ...
- Python函数属性和PyCodeObject
函数属性 python中的函数是一种对象,它有属于对象的属性.除此之外,函数还可以自定义自己的属性.注意,属性是和对象相关的,和作用域无关. 自定义属性 自定义函数自己的属性方式很简单.假设函数名称为 ...
- 《转》Python学习(17)-python函数基础部分
http://www.cnblogs.com/BeginMan/p/3171977.html 一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/arch ...
随机推荐
- python实现膨胀与腐蚀
目录: (一)膨胀 (二)腐蚀 (三)腐蚀代码(erode) (四)膨胀代码(dilate) (一)膨胀(或) (二)腐蚀(与) (三)腐蚀代码(erode) 1 def erode_demo(ima ...
- 论文翻译:2020_WaveCRN: An efficient convolutional recurrent neural network for end-to-end speech enhancement
论文地址:用于端到端语音增强的卷积递归神经网络 论文代码:https://github.com/aleXiehta/WaveCRN 引用格式:Hsieh T A, Wang H M, Lu X, et ...
- JavaMail发送邮件(超详细)
一:邮件发送的基本概念 本文我将阐述使用JavaMail方式发送和接收Email的详细说明,本博客本着以后遇到类似的邮件发送需求可以直接把代码粘过去直接使用,快捷方便省时间,对于刚接触的JavaMai ...
- 浅谈Java和JavaScript中变量和数据类型的区别
对于一门编程语言的学习,如果第一步是安装环境,那么第二步一定是学习这门语言的基本规则,变量和数据类型则首当其冲 JavaScipt作为一个蹭Java热度而命名的语言,在很多方面和Java也有一定的相似 ...
- c语言用指针交换两个变量
#include<stdio.h> #include<math.h> int main(){ void swap(int a,int b); void swapPointer( ...
- Codeforces 251D - Two Sets(异或方程组)
题面传送门 题意: 你有一个可重集 \(S=\{a_1,a_2,\dots,a_n\}\),你要把它划分成两个可重集 \(S_1,S_2\) 使得 \(S\) 中每个元素都恰好属于 \(S_1\) 与 ...
- Linux 安装和使用 RAR工具
RAR 安装 方法一.通过apt命令安装 rar 和 unrar 未安装 unrar 的情况下,提取 RAR 文件会报出"未能提取"错误 Ubuntu 安装 rar和 unrar( ...
- 如何反向推断基因型文件中的参考碱基(REF/ALT)?
目录 需求 解决 方法一 方法二 需求 客户随手丢来一个基因型文件,类似于hapmap格式,只是少了中间多余的那几列,像这种类hapmap格式文件,往往是芯片数据. 这样的数据因为缺乏等位基因:参考碱 ...
- 【宏蛋白组】iMetaLab平台分析肠道宏蛋白质组数据
目录 一.iMetaLab简介 二.内置工具与模块 1. Data Processing module 2. Functional Analysis 3. R Developing environme ...
- Spring DAO
Spring DAO 连接池 使用JDBC访问数据库是,频繁的打开连接和关闭连接,造成性能影响,所以有了连接池.数据库连接池负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接, ...