Python 函数(一)
函数
简单理解:函数就是可以完成某项工作的代码块。
函数的创建和调用
def functionname([parameterlist]): #参数
[’’‘comments’’’] #注释
[functionbody] #函数体
#定义一个函数,功能为过滤指定字符(如颜色字符)
def f1(string):'''功能:过滤到颜色的字符(如红色、蓝色),并将过滤后的结果输出 #注意缩进,函数体所有内容缩进四个空格参数string:要过滤的字符串没有返回值'''import repattern = r'(红色)|(蓝色)|(黄色)|(紫色)|(白色)' #模式字符sub = re.sub(pattern,"@@____@@",string) #模式匹配print(sub)
#定义一个空函数
def empty():pass
#调用函数
#语法为:functionname([parametersvalue]) 将参数定义好
str1 = "今天我们到公园游玩,里面有红色的玫瑰花,白色的栀子花,加上蓝色的天空,太美啦!"
f1(str1)
今天我们到公园游玩,里面有@@____@@的玫瑰花,@@____@@的栀子花,加上@@____@@的天空,太美啦!
str2 = "小红穿着紫色的连衣裙,面对蓝色的海洋,非常惬意的样子!"
f1(str2)
小红穿着@@____@@的连衣裙,面对@@____@@的海洋,非常惬意的样子!
#例 输出当日的一条信息
def f2():'''功能:每天输出一条信息'''import datetime#定义一个列表list1 = ["星期一:\n天天有个好心情!","星期二:\n人生何处不相逢!","星期三:\n面向大海,春暖花开!","星期四:\n你是我的小苹果!","星期五:\n黑色星期五!","星期六:\n问君能有几多愁?","星期日:\n经典歌曲很好听!"]day = datetime.datetime.now().weekday() #获取当前日期print(list1[day]) #输出当日信息
f2() #调用函数
星期二:
人生何处不相逢!
参数传递
一、实际参数和形式参数
#定义函数小括号里面的一般为形式参数,调用函数小括号里面的一般为实际参数
#值传递和引言传递
def f3(obj):print("原值:",obj)obj += obj
print("="*10,"值传递","="*10)
str3 = "只有被逼到走投无路的时候,才能发挥出最大的潜力!" #不可变对象
print("函数调用前:",str3)
f3(str3)
print("函数调用后:",str3)
========== 值传递 ==========
函数调用前: 只有被逼到走投无路的时候,才能发挥出最大的潜力!
原值: 只有被逼到走投无路的时候,才能发挥出最大的潜力!
函数调用后: 只有被逼到走投无路的时候,才能发挥出最大的潜力!
print("="*10,"引言传递","="*10)
str4 = ["张三","李四","王五","赵六"] #可变对象
print("函数调用前:",str4)
f3(str4)
print("函数调用后:",str4)
========== 引言传递 ==========
函数调用前: ['张三', '李四', '王五', '赵六']
原值: ['张三', '李四', '王五', '赵六']
函数调用后: ['张三', '李四', '王五', '赵六', '张三', '李四', '王五', '赵六']
#例 对多人的发育情况进行判断
def f4(name,hight,weight):'''name:姓名hight:身高weight:体重'''print(name + "的身高:"+ str(hight)+ "米 \t 体重:"+ str(weight) + "公斤")bmi = weight/(hight*hight) #计算发育指数print("您的发育指数为:",str(bmi)) #输出指数if bmi < 18:print("您体重太轻,注意饮食和营养@——@")if bmi >= 18 and bmi < 24.9:print("您的体重正常,恭喜您,继续保持!")if bmi >= 24.9:print("您的体重太重,请减肥!")
#调用函数
f4("甲",1.90,80) #计算甲的发育指数
甲的身高:1.9米 体重:80公斤
您的发育指数为: 22.1606648199446
您的体重正常,恭喜您,继续保持!
f4("乙",1.60,80) #计算乙的发育指数
乙的身高:1.6米 体重:80公斤
您的发育指数为: 31.249999999999993
您的体重太重,请减肥!
f4("丙",1.90,60) #计算甲的发育指数
丙的身高:1.9米 体重:60公斤
您的发育指数为: 16.62049861495845
您体重太轻,注意饮食和营养@——@
二、位置参数
#按照函数内参数顺序对应设置实际参数,如上例中顺序姓名,身高,体重
#如果少设置一个参数或者多设置一个参数,则会报错 如 f4("甲",1.90) 或 f4("甲",1.90,80,78) 均会报错
#如果没有多设置和少设置实际参数,位置顺序也需要对应,否则可能计算错误 如 f4("甲",80,1.90) 则会认为身高80米,体重1.9公斤
三、关键字参数
#通过函数参数中的关键字设置,则可不强调顺序
f4(name="甲",hight=1.90,weight=80) #计算甲的发育指数
甲的身高:1.9米 体重:80公斤
您的发育指数为: 22.1606648199446
您的体重正常,恭喜您,继续保持!
#调换顺序也可以获得正确结果
f4(hight=1.90,name="甲",weight=80) #计算甲的发育指数
甲的身高:1.9米 体重:80公斤
您的发育指数为: 22.1606648199446
您的体重正常,恭喜您,继续保持!
Python 函数(一)相关推荐
- Pass算子python 函数
Pass算子python 函数 函数 • 函数是代码的一种组织形式 • 函数应该能完成一项特定的工作,而且一般一个函数只完成一项工作 • 有些语言,分函数和过程两个概念,通俗解释是,有返回结果的是函数 ...
- Python 函数的可变参数(*paramter与**paramter)的使用
Python 函数的可变参数主要有 *paramter与**paramter 可变参数主要有 *paramter的作用 接受任意多个实际参数并放到一个元组中 def people(*people):f ...
- 【python教程入门学习】Python函数定义及传参方式详解(4种)
这篇文章主要介绍了Python函数定义及传参方式详解(4种),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 一.函数初识 1.定 ...
- python系统提供构造函数传入参数_[ Python入门教程 ] Python函数定义和使用
函数是一段可以重复多次调用的代码,通过输入的参数值,返回需要的结果.通过使用函数,可以提高代码的重复利用率.本文主要介绍Python函数的定义.调用和函数参数设置方法. 函数的定义 Python函数定 ...
- python函数第二次运行报错_Python学习笔记2-函数、高级特性
函数 调用函数 要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数 >>> abs(100) 100 >>> abs(-20) 20 ...
- [教程]Python函数的参数
Python函数的参数 位置参数.默认值参数.可变参数.关键字参数和命名关键字参数 1 函数结构 def 函数名(参数):函数体返回值 2 位置参数 略 3 默认值参数 略 4 可变参数 # 可变长度 ...
- python函数+定义+调用+多返回值+匿名函数+lambda+高级函数(reduce、map、filter)
python函数+定义+调用+多返回值+匿名函数+lambda+高级函数(reduce.map.filter) Python 中函数的应用非常广泛,比如 input() .print().range( ...
- python函数参数*arg和**kwargs分别代表什么?
python函数参数*arg和**kwargs分别代表什么? 注意: 注意:参数arg.*args.**kwargs三个参数的位置必须是一定的.必须是(arg,*args,**kwargs)这个顺序, ...
- python 函数 默认参数
python 函数 默认参数 def add(a=1, b=2): # a,b设置默认参数c = a + breturn c c = add(a=2) # 如果不填,就是默认参数 print(c) 4
- Python的零基础超详细讲解(第十二天)-Python函数及使用
基础篇往期文章: Python的零基础超详细讲解(第一天)-Python简介以及下载_编程简单学的博客-CSDN博客 Python的零基础超详细讲解(第二天)-Python的基础语法1_编程简单学的博 ...
最新文章
- Windows下通过Python 3.x的ctypes调用C接口
- 创建属于自己的调色板
- SAP RETAIL 如何确定自动补货触发的单据类型 II
- mysql oracle查询速度慢_oracle查看执行最慢与查询次数最多的sql语句
- 【java】 linux下利用nohup后台运行jar文件包程序
- sublime text2如何连接FTP/SFTP——图文详细教程
- ASP.NET的几个试题(《C#与.NET程序员面试宝典》)
- 我们真的搞懂这些排序算法了吗?(一)
- ad18/ad19/ad20/ad21/ad22新版ADgaber导出(含官方教程)(含坐标文件)
- Report Machine(RM)报表控件简单用法-delphi
- java中string是什么意思_在java中String...是什么意思
- 飞秋2013设置后无法保存配置问题
- 怎么用ai做出适量插画_用AI打造矢量人像插画
- windows下同一个显卡配置多个CUDA工具包以及它们之间的切换
- 2023年电工杯数学建模B题 人工智能对大学生学习影响的评价 具体建模过程 代码以及思路
- Python数据分析从入门到精通视频教程
- 快速理解iaas/pass/sass
- 简单5招教你拍摄雪景个人写真?
- idea怎么给类和方法自动快速添加注释的方法(/**@return @Param*/)
- TCP在广域网相互通信
热门文章
- Java设计模式学习总结(11)——结构型模式之装饰器模式
- Spring Boot学习总结(6)——SpringBoot解决ajax跨域请求问题的配置
- python用xlrd怎么清洗数据_利用Python进行数据清洗
- 二、Linux系统目录和文件基本操作
- linux es数据库 head,Elasticsearch 5.3.x 使用 Head 插件
- 《中国人工智能学会通讯》——5.4 结 论
- WEB测试总结 (架构,设计)精华部分(转)
- 小小标签,强大功能——深藏不露的 input
- 常见SQL Server 2000漏洞及其相关利用2
- AE域名,沙漠之花阿联酋的专属域名-域名百科