一般的函数都是有参数的,函数的参数都是放在函数定义的括号里的,函数参数的命名规则和我们说的变量的命名规则基本一样,一定要清晰明了。(能概括出它的意义,让人阅读你的代码,就知道这个参数是干嘛的就行)。当然参数也可以没有,可以是一个,也可以是多个。

比如:

1 def name_sex(name):       #定义一个name_sex函数,这个函数有一个name参数,记得冒号结尾。
2 def name_sex(name,sex): #定义一个name_sex函数,这个函数有两个参数,用英文逗号隔开。

对于有参数的函数,我们可以是这样直接传入参数调用。

def name_sex(name):              #自定义函数name_sex()
print('我叫:%s'%name) #这是函数内部的功能代码 name_sex('Xiao Hong') #调用name_sex()这个函数,传入的参数写在括号里面
name_sex('小军')

同样的我们也可以指明参数调用,也就是我们说的关键字参数。

1 def name_sex(name,sex):
2 print('我叫:%s ' % name + '我是:%s孩子'%sex) # 这是函数内部的功能代码
3 name_sex(name ='Xiao Hong',sex = '男') #指明把'Xiao Hong'这个参数传给name,把'男'传给sex

相信大家理解了什么是关键字参数,但是有一个规则:就是说,如果第某个参数,使用了关键字,那么他后面的参数都必须使用关键字。

我们看个简单的案例:     %d的意思是要传入的是数字对象

1 def name_sex(name,sex,age):
2 print('我叫:%s ' % name + '我是:%s孩子'%sex + '%d岁了'%age) #第一个参数会自动传给第一个参数
3 name_sex('Xiao Hong',sex = '男',age = 17) #第二个参数开始指定传递

一定要记住规则:如果第某个参数,使用了关键字,那么他后面的参数都必须使用关键字。(如果第一个使用了关键字参数,后面的都不使用,那么会报错的哦)

简单的参数应用方法我们就到这里,之后的自动化如果有用到其他参数我们在做细化的提升。

我们看下函数返回值

函数的返回值可以有,也可以没有。如果我们需要这个函数返回些我们想要的结果,需要使用到return关键字:

1 def name_sex(name):    #第二步:小军会传入给name
2 return name #第三步:return关键字,会把name的值,返回给变量a
3
4 a = name_sex('小军') #第一步:开始使用变量a调用函数,传入'小军'这个参数
5 print(a) #我们打印结果,看变量a有没有指向‘小军’

函数返回值大家理解了吗?如果还是有疑惑可以评论留言哦~

我们再看下函数里面调用函数,之前我们是在函数外面调用函数

实际的工作场景中,我们很有可能在函数里面调用其他函数,但是需要注意的是,函数在还没有定义的时候,不能调用,否则会报错:我们先看个简单的小案例:

name我们看下正确的方法:大家看明白了吗?一定要先定义,在调用。

def name_sex(name):   #第一步,定义我们的name_sex函数
print(name)
name_sex('小军') #第二步我们调用函数

搞清楚了上面的规则,接下来:我们开始函数里面调用函数~

1 def sex():                   #定义第一个函数,供name函数调用
2 print('我被调用了') #sex函数的函数体
3
4 def name():
5 print('准备调用sex()函数')
6 sex() #调用函数外面的sex函数,一定要先定义,在使用
7
8 name() #调用name函数

其实把两个函数换换位置也是可以的:因为我们name()函数再没有调用的时候,是不会去调用sex函数。当naem()函数被调用的时候,我们已经把sex()函数定义了。

1 def name():
2 print('准备调用sex()函数')
3 sex() #调用函数外面的sex函数,一定要先定义,在使用
4
5 def sex(): #定义第一个函数,供name函数调用
6 print('我被调用了') #sex函数的函数体
7
8 name() #调用name函数

如果你没有理解,听我的,把这几行代码敲上十遍,如果还是没有理解可以联系我哦~

还有一个场景就是函数里面定义一个新的函数:(记住哦~在函数A内部定义函数B后,B函数的使用范围仅仅是在函数A内部~)

1 def sex():                   #定义第一个函数
2 def name():
3 print('我就是被定义的函数')
4
5 print('我们开始调用函数里面的name()函数')
6 name()
7
8 sex() #调用sex函数

相信你对函数有了一定的认识,那么我们认识下Python内置的一些函数吧,这些函数可都是你以后代码路上的十八般武器~~~·

1 a = [6,2,4,3]
2 print(type('a')) #type()函数可以帮助我们看当前数据是什么类型的数据对象,可以看出是一个字符串对象str
3 print(max(a)) #max()函数可以显示最大的数据
4 print(min(a)) #min()函数可以显示最小的数据
5 print(len(a)) #len()函数可以显示数据的长度

没错我们在使用的print()也是一个内置函数,是打印输出结果显示在我们的屏幕上

函数的基本知识就是这么多了,内置的函数还有很多,以后笔记涉及到新的函数,在细化~~~

总结:

1、函数的定义必须使用def关键字,后面是函数的名字,然后括号里面是函数的参数,可以不写参数,最后以以英文冒号结尾

2、函数定义完后,里面的函数体,要缩进,建议大家按4下空格

3、函数调用的时候就是函数的名字加括号neme()   可以传入你需要的参数,可以不写参数

4、函数括号里面的参数,如果第某个参数开始指定参数传入,那么以它开始后面的参数都要指定参数传入-------关键字参数

5、函数可以返回结果,也可以不返回,如果需要返回 就用return关键字

6、函数有时候我们需要他返回给我们结果,那么谁调用的函数,结果就返回给谁。比如  a = name() 最后返回的结果会赋值给变量a

拜拜~~~~~~不理解的小伙伴记得留言哦,欢迎关注,相互学习。。。

认识函数(python)的更多相关文章

  1. 函数:Python的乐高积木 - 零基础入门学习Python017

    函数:Python的乐高积木 让编程改变世界 Change the world by program 相信大家小时候应该都玩过神奇的乐高积木,只要通过想象和创意,我们可以用它拼凑出很多神奇的东西. 随 ...

  2. 匿名函数python内置高阶函数以及递归

    匿名函数 python定义一个函数通常使用def关键词,后面跟函数名,然后是注释.代码块等. def func(): '''注释''' print('from func') 这样就在全局命名空间定义了 ...

  3. python第六天 函数 python标准库实例大全

    今天学习第一模块的最后一课课程--函数: python的第一个函数: 1 def func1(): 2 print('第一个函数') 3 return 0 4 func1() 1 同时返回多种类型时, ...

  4. zip函数-Python 3

    zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表. zip函数在获取数据后,生成字典(dict)时比较好用. for examples: # Code based on P ...

  5. partial函数-python学习

    一个函数可以有多个参数,而在有的情况下有的参数先得到,有的参数需要在后面的情景中才能知道,python 给我们提供了partial函数用于携带部分参数生成一个新函数. def add(a,b,c=2) ...

  6. Python hasattr() 函数 // python中hasattr()、getattr()、setattr()函数的使用

    http://www.runoob.com/python/python-func-hasattr.html https://www.cnblogs.com/zanjiahaoge666/p/74752 ...

  7. 迭代器与函数Python学习(四)

    1.1 迭代器: 迭代的工具 1.1.1 什么是迭代: 指的是一个重复的过程,每一次重复称为一次迭代,并且每一次重复的结果是下一次重复的初始值 while True: print('=====> ...

  8. 匿名函数 python内置方法(max/min/filter/map/sorted/reduce)面向过程编程

    目录 函数进阶三 1. 匿名函数 1. 什么是匿名函数 2. 匿名函数的语法 3. 能和匿名函数联用的一些方法 2. python解释器内置方法 3. 异常处理 面向过程编程 函数进阶三 1. 匿名函 ...

  9. python基础-3 集合 三元运算 深浅拷贝 函数 Python作用域

    上节课总结 1 运算符 in 字符串 判断  : “hello” in "asdasfhelloasdfsadf" 列表元素判断:"li" in ['li', ...

  10. 第017讲:函数 - Python的乐高积木

    0. 你有听说过DRY吗? me:不知道 参考答案: 1. 都是重复一段代码,为什么我要使用函数(而不使用简单的拷贝黏贴)呢? me:函数可以设置参数. 参考答案:0) 可以降低代码量(调用函数只需要 ...

随机推荐

  1. 十三、LVM 逻辑卷管理

    http://note.youdao.com/noteshare?id=0252cd5dcf7f2e5f11de5b3672779201&sub=ED011464ADA3467D9424271 ...

  2. zookeeper源码 — 五、处理写请求过程

    目录 处理写请求总体过程 客户端发起写请求 follower和leader交互过程 follower发送请求给客户端 处理写请求总体过程 zk为了保证分布式数据一致性,使用ZAB协议,在客户端发起一次 ...

  3. spaCy 第一篇:核心类型

    spaCy 是一个号称工业级的自然语言处理工具包,最核心的数据结构是Doc和Vocab.Doc对象包含Token的序列和Token的注释(Annotation),Vocab对象是spaCy使用的词汇表 ...

  4. sqlserver 锁表进程及执行的SQL

    --1.查进程select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableNamefrom sys.d ...

  5. Python 自学笔记(二)

    3-1.条件判断 3-1.条件判断 3-1-1.单项判断 if 3-1-2.双向判断 if...else... 3-1-3.多向判断 if...elif...else 3-2.if嵌套 4.输入 4- ...

  6. UML期末复习题——2.5:System Sequence Diagram & Post-condition

    第五题:系统顺序图 重要概念: 1.对象: 对象是特定行为与属性的集合. 对象的表示方式有三种: a.包括对象名和类名 b.只有类名. c.只有对象名 2.消息表示形式: 消息用于描述对象间交互的方式 ...

  7. Eclipse的断点调试

    A:Debug的作用 调试程序 查看程序执行流程 B:如何查看程序执行流程 什么是断点: 就是一个标记,从哪里开始. 如何设置断点: 你想看哪里的程序,你就在那个有效程序的左边双击即可. 在哪里设置断 ...

  8. Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.5:test

    解决方法: 打包跳过测试有两种方法 一是命令行 mvn clean package -Dmaven.test.skip=true 二是写入pom文件 <plugin> <groupI ...

  9. 从字节跳动离职后,拿到探探、趣头条、爱奇艺、小红书、15家公司的 offer【转】

    前言 博主目前从事Android开发3年,前两年一直在抖音工作.我这篇文章并不是简单的描述一些面试中的题,或者总结一些Android的知识,而是想记录我整个的想法和准备的过程,以及一些心得体会,让大家 ...

  10. laravel5.5的定时任务详解(demo)

    原文地址:https://blog.csdn.net/LJFPHP/article/details/80417552