小学生都能学会的python(函数)
小学生都能学会的python(函数)
神马是函数
函数: 对功能或者动作的封装
函数的定义
def 函数名(形参列表):
函数体(return)
ret = 函数名(实参列表)
函数的返回值
return,只要执行到return 函数的本次调用就会被停止
1.如果函数不写return, 没有返回值。 接收到的是None
2.写了return。 return后面什么都不写或者return后面的是None. 返回None
3.return 一个值。 返回一个结果
4.return 值,值,值 返回多个值。结果是元组
函数的参数(一部分)
参数:函数在调用的时候给函数传递的信息
形参: 在函数声明的位置的变量
实参: 在函数调用的时候给出的具体的值
传参: 把实参赋值给形参的过程
分类:
实参:
1. 位置参数. 按照位置给形参传递信息
2. 关键字参数. 按照形参的名字给参数传递信息
3. 混合参数. 先位置后关键字
形参:
1. 位置参数
2. 默认值参数, 必须写在位置参数后面
3. 动态参数
# while 1:
# print("拿出手机")
# print("打开陌陌")
# print("找一找心怡的对方.")
# print("出来吃吃饭")
# print("唱唱歌")
# print("跳跳广场舞")
#
# print("吃饭") # 函数是对功能或者动作的封装
# 函数的定义:
# def yue():
# print("拿出手机")
# print("打开陌陌")
# print("找一找心怡的对方.")
# print("出来吃吃饭")
# print("唱唱歌")
# print("跳跳广场舞")
#
# # 函数的调用: 函数名()
# yue()
# print("回家休息休息")
# yue() # 动作就可以在任何时候, 在任何位置, 进行访问 # 当函数执行之后。可以给调用者一个返回值
# def yue(): # 参数
# print("拿出手机")
# print("打开陌陌")
# print("找一找心怡的对方.")
# print("出来吃吃饭")
# print("唱唱歌")
# print("跳跳广场舞")
# return "小姐姐", "小护士", "广场舞大妈"
# # return "小姐姐" # return表示返回。 这个函数在调用之后会得到一个结果
# ret = yue() # 当函数有返回值的时候。 我们可以不接受返回值
# print(ret) # 在函数中如果不写return 表示函数没有返回值。调用方接收到的是None
# return 可以终止一个函数的运行
# 在函数中写了return。 但是return后面不跟值, 表示函数没有返回值。 接受的是None。
# 在函数中写return。 return后面跟一个值
# 在函数中写return。 return 后面可以跟上多个值, 表示返回多个值。 接收方收到的是元组 # # 形参
# def yue(tools): # 在函数声明的位置。 给出来的参数叫形参。 形式上的一个参数. 用一个变量来表是
# print("拿出手机")
# print("打开%s" % tools)
# print("找一找心怡的对方.")
# print("出来吃吃饭")
# print("唱唱歌")
# print("跳跳广场舞")
#
# # 实参
# # 在函数调用的时候。把实参的值赋值给形参的过程叫传参
# yue("微信") # 在函数调用的地方给出的具体的值。 参数叫实参. 实际参数
# yue("陌陌")
# yue("探探") # def chi(good_food, no_good_food, drink):
# print("我要吃",good_food, no_good_food, drink)
#
# # chi("大米饭", "冰峰", "炸鸡")
# # chi(drink="哇哈哈", no_good_food="薯条", good_food="盖浇饭")
# chi("小米饭", "辣条", drink="可乐")
# chi(drink="可乐", "小米饭", "辣条") def regist(name,sex="男", age=18): # 语法上不允许
print(name, age, sex) regist("刘伟", 22)
regist("李铁帅", 27)
regist("高晓燕", 18, "女")
regist("李铁帅", 27)
regist("李铁帅", 27)
regist("李铁帅", 27)
regist("李铁帅", 27)
regist("李铁帅", 27) # 实参的分类:
# 1. 位置参数. 按照位置。 给形参赋值
# 2. 关键字参数. 按照形参的名字给参数赋值
# 3. 混合参数, 位置参数必须放在前面。 关键字参数放后面 # 形参的分类(3大类)
# 1. 位置参数 按照位置来声明形参
# 2. 默认值参数, 当给参数传递值的时候。 默认值不起作用, 不给值。 默认值起作用. 保证你至少有个值能用
# 顺序: 位置参数必须放在前面。 默认值参数必须放在后面 # 函数:对功能或者动作的封装
# 登陆验证
# def login(username, password):
# if username == 'alex' and password == "123":
# return True
# else:
# return False
#
# # 使用场景
# name = input("请输入你的账号:")
# pws = input("请输入你的密码:")
# if login(name, pws):
# print("进入刘伟的空间")
# else:
# print("用户名或密码错误, 请重新登陆!") # f(x) = x + 1
# f(3) = 3 + 1 = 4
# def f(x):
# return x + 1
# print(f(2))
#
# s = "你好啊我叫塞利亚"
# print(len(s))
#
# def my_len(s):
# count = 0
# for el in s:
# count+=1
# return count
# print(my_len(s))
小学生都能学会的python(函数)的更多相关文章
- 小学生都能学会的python(函数的进阶)
小学生都能学会的python(函数的进阶) 1. 动态传参 形参: 1. 位置参数 2. 默认值参数 3. 动态传参 *args 动态接收位置参数 **kwargs 动态接收关键字参数 def fun ...
- 小学生都能学会的python(<lamda匿名函数,sorted(),filter(),map(),递归函数>)
小学生都能学会的python(<<lamda匿名函数,sorted(),filter(),map(),递归函数,二分法>> 1. lambda 匿名函数 lambda 参数: ...
- 小学生都能学会的python(闭包和迭代器)
小学生都能学会的python(闭包和迭代器) 1. 函数名第一类对象 函数名其实就是变量名 1). 可以像变量一样互相赋值. 2). 可以作为函数的参数,进行传递 3). 可以作为返回值返回 4). ...
- 小学生都能学会的python(编码 and 字符串)
小学生都能学会的python(编码 and 字符串) 一,编码 最早的计算机编码是ASCII. 有英文+数字+特殊字符 8bit => 1byte 没有中文, 后面的编码必须兼容ASCII ...
- 小学生都能学会的python(生成器)
小学生都能学会的python(生成器) 1. 生成器 生成器的本质就是迭代器. 生成器由生成器函数来创建或者通过生成器表达式来创建 # def func(): # lst = [] # for i i ...
- 小学生都能学会的python(文件操作)
小学生都能学会的python(文件操作) 1. open("文件路径", mode="模式", encoding="编码") 文件的路径: ...
- 小学生都能学会的python(深浅拷贝)
小学生都能学会的python(深浅拷贝) join() 把列表中的每一项用字符串拼接起来 # lst = ["汪峰", "吴君如", "李嘉欣&quo ...
- 小学生都能学会的python(小数据池)
小学生都能学会的python(小数据池) 1. 小数据池. 目的:缓存我们字符串,整数,布尔值.在使用的时候不需要创建过多的对象 缓存:int, str, bool. int: 缓存范围 -5~256 ...
- 小学生都能学会的python(字典{ })
小学生都能学会的python(字典{ }) 1. 什么是字典 dict. 以{}表示. 每一项用逗号隔开, 内部元素用key:value的形式来保存数据 {"jj":"林 ...
随机推荐
- 四大MQ比较及MQ详解
消息队列已经逐渐成为企业IT系统内部通信的核心手段.它具有低耦合.可靠投递.广播.流量控制.最终一致性等一系列功能,成为异步RPC的主要手段之 一.当今市面上有很多主流的消息中间件,如老牌的Activ ...
- 【hdu 6336】 Matrix from Arrays
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 找个规律会发现 M[i][j] = M[i-2*L][j] = M[i][j-2*L] 先预处理出来(1,1)-(2L,2L)这个矩 ...
- Emgu cv人脸检测识别
Emgu cv人脸检测识别 1.开发平台:WIN10 X64 VS2012 Emgucv版本:3.1 2.先给大家分享一个官网给的示例源代码: https://ncu.dl.sourcef ...
- JavaScript 事件对内存和性能的影响
程序代码: <%-- Created by IntelliJ IDEA. User: 乔克叔叔 Date: 2017/12/26 Time: 16:45 To change this templ ...
- eclipse 去掉Eclipse打开后定期弹出Usage Data Upload对话框
Eclipse 的 UDC 老定期蹦出来说要上传使用数据到 eclipse 官网服务器去除方法: 1.删除 eclipse/plugins 目录下以 org.eclipse.epp.usagedata ...
- 编译驱动模块所需的Makefile
目标定义:就是用来定义哪些内容作为模块编译,哪些内容要编译并链接进内核. obj-y += foo.o 表示要由foo.c或者foo.s文件编译得到foo.o并链接进内核: obj-m则表示该文件要作 ...
- 工具-NuGet
1.添加下载后,会将文件添加到当前项目的引用和bin目录中 ORM是一种插件/组件,将对集合对象的操作映射为对关系型数据库的操作,这个映射是相互的 来自为知笔记(Wiz)
- java web项目发生异常依然能运行
由于JavaWeb应用业务逻辑的复杂性,容易发生一些意想不到的错误和异常,给系统的调试带来不必要的麻烦,不友好的提示信息使编程者对错误和异常无从下手.特别是当发生异常时,Java异常栈输出的信息只能给 ...
- nyist oj 115 城市平乱 (最短路径)
城市平乱 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描写叙述 南将军统领着N个部队.这N个部队分别驻扎在N个不同的城市. 他在用这N个部队维护着M个城市的治安.这M个城市 ...
- STM32F030, 使用嘀嗒定时器Systick实现LED闪烁
本文主要解决两个问题 1 STM32的IO口要反转,怎么实现? 2 嘀嗒定时器systick的配置 解答1: 单片机的口,反转非常easy.sbit led = P1 ^6; led = ~led; ...