函数 day9
一,什么是函数?
函数的定义与调用
s = 'fkdsagadfdsagfdsagg'
count = 0
for i in s:
count += 1
print(count) l1 = [1,2,3,4,5,6,5,4,3]
count = 0
for i in l1:
count += 1
print(count)
重复使用
代码可读性差
def my_len(): #def 关键字,定义函数, 空格 函数名(变量)
l1 = [1, 2, 3, 4, 5, 6, 5, 4, 3]
count = 0
for i in l1:
count += 1 my_len() # 函数名 + () 执行此函数 函数是以功能为导向,函数内部尽量不要有print l1 = [1,2,3,4,5,6,5,4,3]
ret = len(l1)
print(ret)
函数的定义
定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":"。 def 是固定的,不能变,他就是定义函数的关键字。 空格 为了将def关键字和函数名分开,必须空(四声),当然你可以空2格、3格或者你想空多少都行,但正常人还是空1格。 函数名:函数名只能包含字符串、下划线和数字且不能以数字开头。虽然函数名可以随便起,但我们给函数起名字还是要尽量简短,并能表达函数功能 括号:是必须加的,先别问为啥要有括号,总之加上括号就对了! 注释:每一个函数都应该对功能和参数进行相应的说明,应该写在函数下面第一行。以增强代码的可读性。 调用:就是 函数名() 要记得加上括号。
二,函数的返回值。
def my_len(): # def 关键字,定义函数, 空格 函数名(变量)
l1 = [1, 2, 3, 4, 5, 6, 5, 4, 3]
count = 0
for i in l1:
count += 1 my_len() # 函数名 + () 执行此函数 函数是以功能为导向,函数内部尽量不要有print l1 = [1,2,3,4,5,6,5,4,3]
ret = len(l1)
print(ret) return 1:遇到return 此函数结束,不在向下进行.
2 ,return 返回值
不写return 返回 None
return None 返回 None
return 单个值 返回此单个值
return 多个值 将多个值包在元组中,返回给调用者此元组
def my_len():
l1 = [1, 2, 3, 4, 5, 6, 5, 4, 3]
print(1111)
print(222)
return 遇到return 此函数结束,不在向下进行
print(333)
def my_len():
l1 = [1, 2, 3, 4, 5, 6, 5, 4, 3]
count = 0
for i in l1:
count += 1
return count
ret = my_len()
print(ret) def my_len():
l1 = [1, 2, 3, 4, 5, 6, 5, 4, 3]
count = 0
for i in l1:
count += 1
return 1,2,[123,2] ret1,ret2,ret3 = my_len() # (1,2,[123,2])
print(ret1,ret2,ret3)
ret = my_len()
ret1 = ret[0]
ret2 = ret[1]
ret3 = ret[2]
但是咱们写的这个函数,并不会得到这样的结果,如何让他和len函数一样,有返回值呢?
那就是在函数的最后加上一个return,return 后面写你需要的返回值就可以了。
#函数定义
def mylen():
"""计算s1的长度"""
s1 = "hello world"
length =
for i in s1:
length = length+
return length #函数调用
str_len = mylen()
print('str_len : %s'%str_len) return返回值
return关键字的作用:
return关键字的作用
return 是一个关键字,在pycharm里,你会看到它变成蓝色了。你必须一字不差的把这个单词给背下来。
这个词翻译过来就是“返回”,所以我们管写在return后面的值叫“返回值”
要研究返回值,我们还要知道返回值有几种情况:分别是没有返回值、返回一个值、返回多个值
没有返回值
不写return的情况下,会默认返回一个None:我们写的第一个函数,就没有写return,这就是没有返回值的一种情况。
#函数定义
def mylen():
"""计算s1的长度"""
s1 = "hello world"
length = 0
for i in s1:
length = length+1
print(length) #函数调用
str_len = mylen()
#因为没有返回值,此时的str_len为None
print('str_len : %s'%str_len) 没有return
三,函数的参数。
函数的两种类型的参数:一种是函数定义里的形参,另一种是调用函数的实参。在调用函数的时候,函数内部,实参会赋值给形参,。
s = 'fdsafsda'
l2 = [1, 2, 3, 4, 5, 6, 5, 4, 3, 3, 'alex']
函数的传参 def my_len(x): #形参:形式参数
count = 0
for i in x:
count += 1
return count
ret = my_len(l2) # 实参:实际参数
print(ret)
len(s) 从实参的角度:
按位置传参
按关键字传参
混合传参 关键字参数永远在位置参数后面
def my_len(x,y,z): #形参:形式参数
count = 0
for i in x:
count += 1
return count
ret = my_len(l2,s,'alex') # 按位置传参
print(ret)
len(s) def func(x):
if len(x) > 2:
return True
else:return False
print(func('alex'))
函数 day9的更多相关文章
- day9函数作业详解
1.day9题目 1,整理函数相关知识点,写博客. 2,写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. 3,写函数,判断用户传入的对象(字符串.列表.元组 ...
- python全栈开发-Day9 函数对象、函数嵌套、名称空间与作用域
一 .函数对象 一 .函数是第一类对象,即函数可以当作数据传递 可以被引用 可以当作参数传递 返回值可以是函数 可以当作容器类型的元素 二. 利用该特性,优雅的取代多分支的if def foo(): ...
- python全栈学习--day9(函数初始)
Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也 ...
- python—day9 函数的定义、操作使用方法、函数的分类、函数的嵌套调用
一.函数的定义 函数的四个组成部分: 函数名. 函数体. 函数返回值. 函数参数 1.概念:重复利用的工具,可以完成特定功能的代码块,函数是存放代码块的容器 2.定义: def:声明函数的关键词 函数 ...
- Python学习day9 函数Ⅰ(基础)
函数Ⅰ(基础) 三目运算 基本结构 v = 前面 if 条件 else 后面 #条件为真v=前面,条件为假v=后面.#等同于if 条件: v = '前面'else: v = '后面' ...
- Day9 Python基础之函数基础(七)
参考链接:https://www.cnblogs.com/yuanchenqi/articles/5828233.html 1.函数的定义 定义: 函数是指将一组语句的集合通过一个函数名封装起来,要想 ...
- day9.初始函数练习题
1.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. def new(args): a = [] for I in range(1,len(args),2) ...
- day9.初识函数
python3 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你 ...
- DAY9 函数
一.脚本文件的执行 1.存放当前文件作为脚本文件执行的参数们:[‘当前文件的绝对路径’,手动传入的参数们] 2.脚本文件执行:直接用python解释器运行该文件 print(sys.argv) # ...
随机推荐
- Mac下如何安装WebStorm + 破解
1.官网下载 下载地址 选择好系统版本以后,点击DOWNLOAD 2.安装 双击下载好的安装包.将WebStromt拖入application文件夹,然后在Launchp ...
- 记录git的初始设置,添加文件,提交文件
1 初始配置 git config --global user.name "" //配置用户名 git config --global user.email "&quo ...
- ArcGIS案例学习笔记3_1_ArcMap编辑练习
ArcGIS案例学习笔记3_1_ArcMap编辑练习 计划时间:第三天上午 目的:ArcMap编辑练习 教程: pdf page67 数据: gis_ex10/ex07 方法: 1.新建shp文件 目 ...
- C#自定义控件:如果定义控件的事件
我做了一个控件: 在控件上面添加了一个 richTextBox1 系统控件 我想要的效果时,如果点击我的控件,就执行 用户自定义的 控件的 onClick 事件 而控件的工作过程时,如果点击我的控件, ...
- Python之路 - 网络编程之粘包
Python之路 - 网络编程之粘包 粘包
- servlet、servlet容器和web应用程序的关系
- 创建java项目思路
一.搭建 1.创建搭建项目 2.创建分层 二.理解项目(理清总体思路) 1.是否有共同部分(过滤或者拦截) 常用量 (static) 2.搭建单表基本增(是否需要返回值) 删(条件) 查(条 ...
- FP ABPPMGR表 其它常用存储过程
SAP_MATERIAL_SO:处理材料订单缺少BOM,ROUTING信息 1. 增加这部分订单的BOM信息 2. 增加这部分订单材料的ROUTING信息 3. 如果是 ...
- python学习 day19 configparser模块 os模块 subprocess模块
上周五回顾 logging 用于记录日志 四种核心角色: 生成器Logger 过滤器Filter 处理器Handler 格式化处理器 Formatter logging.info.debug 使用默认 ...
- springboot1 缓存前端
@Configurationpublic class WebMvcConfig extends WebMvcConfigurerAdapter { public void addResourceHan ...