一.函数的定义与调用

总结一:

定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":"。

   def 是固定的,不能变,必须是连续的def三个字母,不能分开。。。

   空格 为了将def关键字和函数名分开,必须空(四声),当然你可以空2格、3格或者你想空多少都行,但正常人还是空1格。

   函数名:函数名只能包含字符串、下划线和数字且不能以数字开头。虽然函数名可以随便起,但我们给函数起名字还是要尽量简短,并能表达函数功能

   括号:是必须加的,先别问为啥要有括号,总之加上括号就对了!

注释:每一个函数都应该对功能和参数进行相应的说明,应该写在函数下面第一行。以增强代码的可读性。

函数体:

def 函数名(参数1,参数2,*args,默认参数,**kwargs):
"""注释:函数功能和参数说明"""
函数体
……
return 返回值

调用:就是 函数名() 要记得加上括号

#函数定义
def mylen():
"""计算s1的长度"""
s1 = "hello world"
length = 0
for i in s1:
length = length+1
print(length) #函数调用
mylen()

函数的返回值:return [表达式] 结束函数。不带表达式的return相当于返回 None

可分为:

1.无返回值(会默认返回一个None:)一旦遇到return,结束整个函数

2.返回一个值:

ef mylen():
"""计算s1的长度"""
s1 = "hello world"
length = 0
for i in s1:
length = length+1
return length

3.返回多个值:

可以返回任意多个、任意数据类型的值

def ret_demo1():
'''返回多个值'''
return 1,2,3,4 def ret_demo2():
'''返回多个任意类型的值'''
return 1,['a','b'],3,4 ret1 = ret_demo1()
print(ret1)
ret2 = ret_demo2()
print(ret2)

返回的多个值会被组织成元组被返回,也可以用多个值来接收

def ret_demo2():
return 1,['a','b'],3,4 #返回多个值,用一个变量接收
ret2 = ret_demo2()
print(ret2) #返回多个值,用多个变量接收
a,b,c,d = ret_demo2()
print(a,b,c,d) #用多个值接收返回值:返回几个值,就用几个变量接收
a,b,c,d = ret_demo2()
print(a,b,c,d)

二.函数的参数

参数课分为形参与实参.......

1.函数的参数可分为形参与实参

调用函数时传递的这个“hello world”和定义函数时的s1就是参数。   即   ‘hello word’为实参,而s1为形参

2.传递多个参数

def mymax(x,y):
the_max = x if x > y else y
return the_max ma = mymax(10,20)
print(ma)

3.

 位置参数:按照从左到右的顺序定义的参数
位置形参:必选参数
位置实参:按照位置给形参传值 关键字参数:按照key=value的形式定义实参
无需按照位置为形参传值
注意的问题:
1. 关键字实参必须在位置实参右面
2. 对同一个形参不能重复传值 默认参数:形参在定义时就已经为其赋值
可以传值也可以不传值,经常需要变得参数定义成位置形参,变化较小的参数定义成默认参数(形参)
注意的问题:
1. 只在定义时赋值一次
2. 默认参数的定义应该在位置形参右面
3. 默认参数通常应该定义成不可变类型

Python之初识函数(Day11)的更多相关文章

  1. python基础 (初识函数&函数进阶)

    函数基础部分 .什么是函数? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率. 2.定义函数 定义:def 关键词开头,空格之后接函数名 ...

  2. python开发初识函数:函数定义,返回值,参数

    一,函数的定义 1,函数mylen叫做函数名 #函数名 #必须由字母下划线数字组成,不能是关键字,不能是数字开头 #函数名还是要有一定的意义能够简单说明函数的功能 2,def是关键字 (define) ...

  3. python之初识函数

    函数: 函数是对功能或动作的封装. 函数的语法和定义: def 函数名(): 函数体 调用函数: 函数名() 函数返回值: return : 返回 def yue(): print("拿出手 ...

  4. 跟着太白老师学python 09day 初识函数

    函数的最主要的目的:封装一个功能 函数的优点: 减少代码的复用率, 增加代码的阅读性 def my_len(arvg): # arvg 形参 my_len函数名,应该具有代表性,让你一看就明白 # 函 ...

  5. 11 Python之初识函数

    ---恢复内容开始--- 1. 什么是函数? f(x) = x + 1 y = x + 1 函数是对功能或者动作的封装 2. 函数的语法和定义 def 函数名(): 函数体 调用: 函数名() 3. ...

  6. python之路——初识函数

    阅读目录 为什么要用函数 函数的定义与调用 函数的返回值 函数的参数 本章小结 返回顶部 为什么要用函数 现在python届发生了一个大事件,len方法突然不能直接用了... 然后现在有一个需求,让你 ...

  7. python基础之 初识函数&函数进阶

    函数基础部分 1.什么是函数? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率. 2.定义函数 定义:def 关键词开头,空格之后接函数名 ...

  8. Python初识函数

    Python初识函数 函数理论篇 什么是函数 在编程语言中的函数不同于数学中的函数.不管是数学上的函数还是编程语言中的函数都是为了完成特定的某一功能而诞生的,他们的区别在于: 1.数学中的函数当输入的 ...

  9. Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数

    Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数 内容大纲 1.函数的初识 2.函数的定义 3.函数的调用 4.函数的返回值 5.函数的参数 1.函数初识 # def ...

随机推荐

  1. The Definitive Guide To Django 2 学习笔记(九) 第五章 模型 (一)数据库访问

    以MySql数据库为例,先到http://dev.mysql.com/downloads/connector/python/处下载MysqlConnector for python的连接器. from ...

  2. python 差分包制作-如何来制作差分包?

    继百度网盘爬虫,百度图片爬虫后这是本人第三篇有关python的文章了,由于本人之前做过嵌入式的一些东西,其中会涉及到差分包的制作,所以这篇文章想谈谈如何利用python来制作差分包,如果你对嵌入式的东 ...

  3. 使用inotify+rsync实现服务器间文件同步

      1. rsync 1.1 什么是rsync   rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.它使用所谓的“Rsync演算法”来使本地和远程两个主机之间的文件达到 ...

  4. 第一百四十一节,JavaScript,封装库--DOM加载

    JavaScript,封装库--DOM加载 DOM加载,跨浏览器封装DOM加载,当网页文档结构加载完毕后执行函数,不等待图片音频视频等文件加载完毕 /** dom_jia_zai()函数,DOM页面加 ...

  5. char类型能否存储一个中文字符?为什么

    char类型能否存储一个中文字符?为什么 解答:可以.一个char是两个字节,而一个中文也是两个字节.

  6. XML简单学习

    XML简单概述 1.Extensible Markup language可扩展标记语言; 2.作用:具有层次性的描述有关系的数据: 体现在:描述数据关系:软件配置,以描述程序模块之间的关系: 语法介绍 ...

  7. IdentityServer4环境部署失败分析贴(一)

    前言: 在部署Idv4站点和其客户端在外网时,发现了许多问题,折腾了许久,翻看了许多代码,写个MD记录一下. 1.受保护站点提示错误: Unable to obtain configuration f ...

  8. 终于找到了最新的Chemdarw注册码

    随着中国人对知识产权的保护意识提升,正版软件越来越流行,只有一小部分人还在寻找Chemdarw破解版.最新的ChemDraw 15正式版本已经强势来袭,在获取软件安装包之后需要有效的注册码才能激活软件 ...

  9. Java知识点梳理——抽象类和接口

    抽象类 1.定义:没有包含足够的信息来描绘一个具体对象的类,不能被实例化,必须被继承: 2.abstract关键字:abstract class定义抽象类,普通类的其它功能依然存在,如变量.方法等: ...

  10. UVALive 6560 The Urge to Merge

    题目链接:传送门 题目大意:有一个 3*n 的矩阵,每个格子里有一个数,你可以选择相邻的两个格子合并成一个,并且权值变为两数乘积,若一个数未合并,权值变为0,求最后权值总和最大值. 题目思路:以 2^ ...