python 初识函数
1.什么是函数
函数就是对一个代码块 或者功能的封装,什么时候用,什么时候执行
语法:
def 函数名():
函数体(代码块)
函数的调用
函数名() #所有的()都是函数调用
2.返回值:
函数的返回 (谁调的,返回给谁)
函数在执行过程中或者执行完毕,可以使用return返回给调用者一个结果
只要程序执行到return,函数就会被停止,后面的内容就不会再执行了
比如:
函数中遇到return ,此函数结束,不再继续执行
def zhui():
print("看到美眉")
print("追到美眉")
print("与美吃饭")
return
print("嘿咻~~~")
zhui() #调用函数
结果就是:
看到美眉
追到美眉
与美吃饭#嘿咻~~~是不会打印出来的
给函数调用者一个访问结果呢
def zhui():
print("看到美眉")
print("追到美眉")
print("与美吃饭")
# return "她不吃"
print("嘿咻~~~")
ret=zhui()
print(ret)
输出结果就是
看到美眉
追到美眉
与美吃饭
她不吃
那返回多个元素呢?
def yue():
print("约谁?")
print("约姑娘.")
print("那敢情好.")
return "有美女","在哪里"
girl=yue()
print(type(girl)) #type检查是什么类型, tuple
总结一下:
1. 遇到return. 此函数结束, 函数后面的东西将不会再执行
2. return 返回值
返回值的三个情况:
1,直接写个return,或者干脆整个函数都不写,不返回任何内容参数
2,return 后面跟上一个变量 或者值 (返回值)
3.return 后面跟多个变量或者值,返回的时候解释器会帮我们把多个返回值组装成一个tuple
接受的地方可以接收一个变量,多个变量,结构成多个变量
参数 :
函数在访问时候,给函数传递的一些信息,参数写在小括号里
1.形参: 在函数声明的位置 给出的变量的声明,形式参数,
2.实参: 在函数调用的时候,给函数传递的具体的值.实际参数
参数可以有很多个,每个参数之间需要用逗号隔开.
先说实参:
1,位置参数
按照位置把实参赋值给形参
def wangzhe(chat): #chat形参 在函数声明的位置给出的变量的声明,形式参数
print("廉颇")
print(chat)
print("王昭君")
print("孙尚香")
wangzhe('李白') #实参 在函数调用的时候,给出具体的值
写函数,计算传入函数的字符串中[数字]、[字母]、[空格] 以及 [其他]的个数,并返回结果。
def func(chat): shu = 0 zi = 0 kong = 0 qi = 0 for i in chat: if i.isdigit(): shu =shu +1 elif i.isalpha(): zi = zi+1 elif i.isspace(): kong = kong+1 else: qi = qi+1 return f'数字:{shu}, 字母 {zi},空格:{kong},其他:{qi}'ll = "123,321,adas fd "l1 = func(ll)print(l1)
2,关键字参数:
def laoshi(chat,add,age):
print("拿出手机")
print("打开"+chat)
print("在"+add+"位置,找一个"+str(age)+"以下的小姑娘")
'))
3.混合参数
可以把上面两种参数混合着使用. 也就是说在调用函数的时候即可以给出位置参数, 也可 以指定关键字参数.
# 混合参数 yue(, address="上海海") # 正确.第⼀个位置赋值给chat, 后面的参数开始 指定关键字. yue(age=", "微信", address="⼴广州") # 错误, 最开始使用了关键字参数, 那么后⾯面的 微信的位置就串了, 容易出现混乱
注意: 在使用混合参数的时候, 关键字参数必须在位置参数后面
插个题外题!!!!
编写函数, 给函数传递两个参数a, b. 比较a, b的大小, 返回 a, b中大的那个数
def get_max(a ,b):
if a > b:
print(a)
elif a <b :
print(b)
get_max(,)
#这样略微麻烦一点,这时候有个三元运算符.
a =
b =
c = a if a>b elif b #当a>b成立返回a,否则返回b
print(c)
def my_max(a, b):
c = a if a > b else b # 当a>b成⽴立返回a, 否则返回b
return c
再说形参::(也是有三种形式,目前先说两种)
1,位置参数:
位置参数. 按照位置来赋值, 到目前为止, 我们编写的函数都是这种.
2,默认值参数:
当出现很多重复的参数的时候,考虑使用默认值参数
默认值参数必须在位置参数后面,
当调用的地方不给出值得时候,会使用默认值
举个例子:
比如, 我们录入咱们班学生的基本信息. 通过调查发现. 我们班大部分学生都是男生. 这个时 候就可以给出一个sex='男'的默认值.
def stu_info(name, age, sex='男'):
print("录入学生信息")
print(name, age, sex)
print("录入完毕")
stu_info()
注意, 必须先声明位置参数, 才能声明默认值参数.
综上: 在形参的角度来看,
1. 位置参数
2. 默认值参数(大多数传进来的参数都是一样的, 一般用默认参数)
python 初识函数的更多相关文章
- Python初识函数
Python初识函数 函数理论篇 什么是函数 在编程语言中的函数不同于数学中的函数.不管是数学上的函数还是编程语言中的函数都是为了完成特定的某一功能而诞生的,他们的区别在于: 1.数学中的函数当输入的 ...
- 万恶之源 - Python初识函数
什么是函数 我们目前为止,已经可以完成一些软件的基本功能了,那么我们来完成这样一个功能:约x pint("拿出手机") print("打开陌陌") print( ...
- 2018.8.8 python 初识函数
主要内容: 1.函数定义 2.函数名,函数体以及函数的调用 3.函数的返回值 4.函数的参数 一.函数的定义 函数:对代码块和功能的封装和定义. 二.函数名.函数体及函数的调用 我们使用def关键字来 ...
- python之路——初识函数
阅读目录 为什么要用函数 函数的定义与调用 函数的返回值 函数的参数 本章小结 返回顶部 为什么要用函数 现在python届发生了一个大事件,len方法突然不能直接用了... 然后现在有一个需求,让你 ...
- python基础 (初识函数&函数进阶)
函数基础部分 .什么是函数? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率. 2.定义函数 定义:def 关键词开头,空格之后接函数名 ...
- python基础之 初识函数&函数进阶
函数基础部分 1.什么是函数? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率. 2.定义函数 定义:def 关键词开头,空格之后接函数名 ...
- 孤荷凌寒自学python第十七天初识Python的函数
孤荷凌寒自学python第十七天初识Python的函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 函数是能够完成指定运算并返回运算结果的代码块.是结构化编程重要的结构. 我首先发现pyt ...
- 9.Python初窥门径(函数初识)
Python(函数初识) 一.初识函数 面向过程缺点 : 代码重复,代码描述性不高 函数 : 函数是以功能为导向,一个函数封装一个功能. 函数的优点 : 减少代码重复性,增强了代码的可读性 二.函数的 ...
- Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数
Python函数01/函数的初识/函数的定义/函数调用/函数的返回值/函数的参数 内容大纲 1.函数的初识 2.函数的定义 3.函数的调用 4.函数的返回值 5.函数的参数 1.函数初识 # def ...
随机推荐
- 简述react与vue的区别
React 和Vue是现在主流的两个框架(相对来说angular用的已经少了) 两者的区别体现在以下方面 相同点: 1.react和vue都支持服务端渲染 2.都有虚拟DOM,组件化开发,通过prop ...
- 启动aspx文件错误
有一次,为了模仿翻页效果,设置的启动也是aspx文件.当时因为重装系统的原因,我的系统暂时不支持aspx文件的发布访问.所以,我就在MIME Type里面添加了对aspx文件的访问,如下图: 这样就可 ...
- Vue.Draggable/SortableJS 的排序功能,在VUE中的使用
此插件git: https://github.com/SortableJS/Vue.Draggable 基于Sortable.js http://www.cnblogs.com/xiangsj/p/6 ...
- 28. SpringBoot 集成Redis
1.引入依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
- 八、文件IO——存储映射
8.1 存储映射介绍 8.1.1 概念 存储映射是一个磁盘文件与存储空间的一个缓存相映射,对缓存数据的读写就相应的完成了文件的读写. 文件操作部分映射到虚拟内存的一块区域,我们对虚拟内存映射的那块区域 ...
- node之http模块总结
[文档归档文] 参考文献:https://nodejs.org/dist/latest-v6.x/docs/api/http.html
- $(function() {....}) ,(function($){...})(jQuery)
$(function() {....}) 是 jQuery 中的经典用法,等同于 $(document).ready(function() {....}),即在页面加载完成后才执行某个函数,如果函数中 ...
- HDFS笔记(二)
fsimage : NameNode启动时,对文件系统的快照 eidt logs : NameNode启动后,对文件系统的改动序列 namenode在全局里就一个进程,所以存在单点问题 DataNod ...
- 【blog】推荐一个博客系统后台管理模板 - pinghsu
pinghsu https://github.com/chakhsu/pinghsu
- Kotlin中构造方法的参数var val 和 什么都没有的区别
1.什么都没有,在该类中使不能使用的, 这个参数的作用就是,传递给父类的构造方法 2.使用var 可以在类中使用,相当于 我们声明了一个该类中定义了一个private 的成员变量 3.val表示不让修 ...