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.函数的作用*** 函数减少代码的重复性,增 ...
随机推荐
- ECMAScript 6 入门之字符串
1.新增字符串的方法 1.字符是否存在 console.log("Yo".indexOf("Y")!=-1); console.log("Yo&quo ...
- vue中单选框,利用不存在的值标示选中状态
1.效果预览 2.index.html <!DOCTYPE html> <html lang="en"> <head> <meta cha ...
- layui:根据行内某个值,设定该行得背景色
done:function () { $("table tr").each(function () { var s = $(this).children().eq(1).text( ...
- 在view source页面保存下来的网页源码和保存网页得到的源码不同
前言 以前抓网页都是直接requests+bs4直接刚的,今天想拿一下拉钩的数据,就继续按照以下步骤来了: 先找个想爬的网页,然后写解析功能 批量爬,然后解析 入库 探究 结果发现行不通了,用bs4去 ...
- Android 自动化测试——Monkey测试
Android自带了很多方便的测试工具和方法,包括我们常用的单元测试.Robotium测试.Monkey测试.MonkeyRunner测试.senevent模拟等.这些方法对于我们编写高质量的APP十 ...
- ipv6禁用导致rpcbind服务启动失败实例
ipv6禁用导致rpcbind服务启动失败实例 昨天在做服务器磁盘分区扩容的时候出现过一个服务启动的问题,在此记录.情景再现:前天晚上申请做磁盘扩容,得到批准后,昨天早上5点开始做停机调整维护 ...
- vue:过滤器
一.过滤器 过滤器是vue中的一个特性,作用是用于对文本进行格式化的作用. 注意:在vue 1.0中有内置的过滤器,在2.0中去掉了内置过滤器,只有自定义过滤器 二.使用位置 过滤器只能应用在两个地方 ...
- Netbeans rcp中获得本地文件系统路径
通过file协议 —————————————————————————————————————————————————————— URL url = new URL("file:///E:/A ...
- linux下依赖库的版本问题引起的安装失败:libssl-dev版本问题无法安装 :libssl-dev : 依赖: libssl1.0.0 (= 1.0.1-4ubuntu3) 但是 1.0.1-4ubuntu5.31 正要被安装
依赖库版本问题引起的安装失败解决方法如下有两种: 1.是由于源需要更新,如下操作: libssl-dev : 依赖: libssl0.9.8 (= 0.9.8o-1ubuntu4) 但是 0.9.8o ...
- [Node.js] 08 - Web Server and REST API
有了 [Node.js] 07 - Html and Http 作为基础,再继续下面的内容. Node.js 路由 Node.js GET/POST请求 Node.js Web 模块 Node.js ...