day 0313函数的初识
1.函数的定义:
定义:def 关键词开头,空格之后接函数名和圆括号(),还有最后一个‘:’
def是固定的,定义函数的关键字。
空格-是为了将关键字和函数名分开,必须有的。
函数名:只能包括字符串,下划线和数字,不能是数字开头,尽量要短,能表达清楚函数功能。
括号:必须带上
注释:每一个函数应该对功能和参数进行说明,增恰肮代码的可读性。
2.函数的调用:函数名() 要记得加上括号。
3.函数的返回值:
return 关键字 后面接着是需要返回的值。
情况:
A.没有返回值
不写return的情况下,会默认返回一个None
def fun():
print('hello world')
fun()
print(fun())
结果:
hello world
hello world
None
return的出现是结束函数的,及时出现return 不写返回值,系统也会返回值None。
def fun():
print('hello world')
return
print('Ada lace')#验证return终止函数运行
fun()
print(fun())
结果: hello world hello world None
B.返回一个值:
def fun():
s1= 'Ada lace'
length=0
for i in s1:
length+=1
return length#单一的返回值
print(fun())
结果:
8
C.返回多个值:
#多个值返回会被组织成元组返回给调用者。也可以用多个值来接收。
def fun1():
return 1,2,3,4
def fun2():
return 1,[11,22],{'key':159},'ada lace'
print(fun1())
print(fun2())
结果:
(1, 2, 3, 4)#多个值返回会被组织成元组返回给调用者。也可以用多个值来接收。
(1, [11, 22], {'key': 159}, 'ada lace')
关于返回值是多个值 怎么去接收他们的数据:
def fun():
return 1,[11,22],{'key':159},'Ada lace '
# 返回多个值,用一个变量去接收
ret=fun()
print(ret)
#返回多个值,用多个变量接收,返回几个值就用几个变量去接收
a,b,c,d=fun()
print(a,b,c,d) 结果:
(1, [11, 22], {'key': 159}, 'Ada lace ')
1 [11, 22] {'key': 159} Ada lace
D.函数的参数:
实参和形参:
函数调用时用的参数就是实参(实际参数)
定义函数时用的参数就是形参(形式参数)
把实际参数传递给形式参数的过程就是传参(传递参数)
A. 实参角度传参:
1.按照位置进行传参:位置参数
def fun(a,b):
sum=a+b
return sum
print(fun(11,56))#位置参数直接传递数值
结果:67
2.按照关键字传值:关键字参数
def fun(a,b):
sum=a+b
return sum
print(fun(a=56,b=15))#关键字a,b参数直接传递数值
结果:71
3.位置,关键字形式混用:混合传参

注意:这里位置参数必须在关键字参数前面。
形式参数只能赋值一次。
def fun(a,b):
sum=a+b
return sum
print(fun(56,b=11))#位置参数56,关键字参数b=11直接传递数值
结果:67
B.形参角度传参:
1.参数内有设置默认值:
def fun(name,age,sex='male'):#将变化很小的值设置成默认值
print(name,age,sex)
print(fun('张学友',23))#没有传参就返回默认值。
print(fun(name='Blake shelton',age=55,sex='female'))
结果:
张学友 23 male
None
Blake shelton 55 female
None
2.默认参数是一个可变的数据类型
def fun(a,l=[]):#这里L是一个可变的数据类型
l.append(a)
print(l)
print(fun(11,l=[11,22,123]))
结果:
[11, 22, 123, 11]
None
day 0313函数的初识的更多相关文章
- Python_函数的初识、函数的返回值、函数的参数
1.函数的初识 def关键字 空格 函数名(与变量名命名规则相同):英文冒号 函数体 执行函数:函数名+() 函数是以功能为导向的. def login(): pass def register(): ...
- Python 函数的初识
1.函数的初识 函数的作用:以功能为导向 减少代码重复 # 函数试编程 # 函数以功能(完成一件事)为导向,登录 注册, # 一个函数就是一个功能,一个函数只能写一个功能 # 何时需要 何时调用,随调 ...
- Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数
Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数 内容大纲 1.函数的初识 2.函数的定义 3.函数的调用 4.函数的返回值 5.函数的参数 1.函数初识 # def ...
- 2018-11-9-匿名函数&递归函数初识
1.匿名函数(lambda) 2.递归函数初识
- python成长之路六-函数的初识
定义函数 我们现学已知的python函数有<内置函数> 而我们现在要学的是<自定义函数> 1,def 定义一个函数 def name(): # 后接函数名 冒号 pass 2 ...
- python基础学习Day9 函数的初识,实参、形参、
1.函数 def my_len(): l = [,,,,,,] count = for i in l: count += print(count) my_len() 定义的my_len()方法时,其结 ...
- Day 9 函数的初识1
def my_len(): l1 = [1,2,3,5,6] print(111) print(222) return print(333)print(my_len()) 一.函数的定义1.遇到ret ...
- Python函数的初识
一 什么是函数 定义: 定义一个事情或者功能,等到需要用的时候直接用就可以了,那么这个定义的就是一个函数 函数 : 对代码块和功能的封装和定义 函数定义的格式: def 函数名() ...
- python之函数的初识
1. 面向过程编程的缺点 代码重复 代码可可读性不高 2. 函数的定义*** 函数是以功能为导向,一个函数封装一个功能.登录,注册,文件的改的操 3.函数的作用*** 函数减少代码的重复性,增 ...
随机推荐
- android 推流解决方案
.LocalSocket + MediaRecorder + librtmp
- 2. Tensorflow的数据处理中的Dataset和Iterator
1. Tensorflow高效流水线Pipeline 2. Tensorflow的数据处理中的Dataset和Iterator 3. Tensorflow生成TFRecord 4. Tensorflo ...
- SILK 预测模块分析
SILK是一种新结构的基于噪声整形量化算法的编解码框架.不同于类CELP的AMR,EVRC,G729,Speex等标准. 类CELP的结构都是以码本激励为量化框架的编码器.但是这里并不讨论NSQ结构和 ...
- 关于Unity的两种调试方法
Unity的两种调试方法 1.Debug.Log()输出语句调试,平时经常用这个 2.把MonoDevelop和Unity进行连接后断点调试 先把编辑器选择为MonoDevelop,Edit----& ...
- Java如何查找系统的代理设置?
在Java编程中,如何查找系统的代理设置? 以下示例显示如何使用HttpURLConnection类的systemSetting()方法和getResponse()方法的put方法在系统上查找代理设置 ...
- Java----------JMX规范
作者:郭无心链接:https://www.zhihu.com/question/36688387/answer/68667704来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- Mac 挂载树莓派nfs
vim /etc/export /data_sda1/ 192.168.1.*(rw,sync,insecure,no_root_squash) mac端自带rpcbind 挂载 sudo moun ...
- win 停止tomcat
1.首先查找到占用8080端口的进程号PID是多少 CMD>netstat -ano | findstr 8080 这个命令输出的最后一列表示占用8080端口的进程号是多少,假设为1234 2. ...
- tensorflow随机梯度下降算法使用滑动平均模型
在采用随机梯度下降算法训练神经网络时,使用滑动平均模型可以提高最终模型在测试集数据上的表现.在Tensflow中提供了tf.train.ExponentialMovingAverage来实现滑动平均模 ...
- rem布局在react中的应用
摘要: 前面给大家分享了一个react项目(http://www.cnblogs.com/xiyangbaixue/p/4751904.html),这次对这个项目做了一些改进,增加了rem布局和对is ...