python-16-初识函数
前言
以前写的python代码都是像记流水账一样,那么函数时什么额?它可以在任何需要它的地方进行调用,函数分为:
- 内置函数,print(),len()
- 自定义函数
一、自定义函数
1、我们都知道内置函数 len() 是计算长度,如下:
s = '我是十位字符串666'
lg = len(s)
print(lg)

2、这是有没有想到自定义一个函数也是计算长度呢? 直接定义函数名 def xxx(): 一般小写,我们一起看看吧
def my_len(s): # 自定义 my_len 函数
count = 0
for i in s:
count += 1
return count s = '我是十位字符串666'
lg = my_len(s) # 调用 my_len 函数计算长度
print(lg)

3、函数返回值:return
①return 表示有返回值,结束函数调用,没返回值就不写 return
②return 可返回多个值,用多个变量接收:有多少返回值就用多少变量接收、用一个变量接收: 得到的是一个元组
# 多个返回值,有多少返回值就用多少变量接收,一个变量接收返回的是元组。
def common():
return 1, 2, 'ss'
print('一个变量接收:', common()) # 一个变量接收 r1, r2, r3 = common() # 多个变量接收
print('多个变量接收:', r1, r2, r3)

4、函数的形参与实参:
①形参,定义函数时的参数,接收参数;
- 位置参数:必须传,且有几个参数就传几个值
- 默认参数: 可以不传,如果不传就是用默认的参数,如果传了就用传的(也就是常说的默认值)
②实参,调用函数实际传入的参数;
- 按照位置传参
- 按照关键字传参
- 混着用可以:但是 必须先按照位置传参,再按照关键字传参数
- 不能给同一个变量传多个值


5、定义函数时注意:
- 位置参数 : 直接定义参数
- 默认参数,关键字参数 :参数名 = '默认的值'
- 动态参数 : 可以接受任意多个参数,也就是万能参数(参数名之前加*,习惯参数名args、参数名之前加**,习惯参数名kwargs)
- 顺序:①位置参数,②*args,③默认参数,④**kwargs
def my_len(s, a, *args, q=123, **kwargs): # 万能参数
return s, a, args, q, kwargs
# *args 是元组, **kwargs 是字典
lg = my_len('我是S', '我是a', 'ar1', 'ar2', q=321, name='小龙')
print(lg)

6、另一种方式传参
① *arges:组合所有传过来的值,为元组
def login(*args):
''' login注释 '''
print(args) a = '小龙', '笑脸', 'GG', 889
login(*a)

② **kwargs :关键字传参,组合为字典
def login(**kwargs):
''' login注释 '''
print(kwargs) login(a=1, b=2)
a = {'a': 1, 'b': 2}
login(**a)

欢迎来QQ交流群:482713805
python-16-初识函数的更多相关文章
- python基础 (初识函数&函数进阶)
函数基础部分 .什么是函数? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率. 2.定义函数 定义:def 关键词开头,空格之后接函数名 ...
- python开发初识函数:函数定义,返回值,参数
一,函数的定义 1,函数mylen叫做函数名 #函数名 #必须由字母下划线数字组成,不能是关键字,不能是数字开头 #函数名还是要有一定的意义能够简单说明函数的功能 2,def是关键字 (define) ...
- python之初识函数
函数: 函数是对功能或动作的封装. 函数的语法和定义: def 函数名(): 函数体 调用函数: 函数名() 函数返回值: return : 返回 def yue(): print("拿出手 ...
- python ---16 初识面向对象
面向对象 一 .面向对象和面向过程比较 ①面向过程:一切以事物的发展流程为核心 优点:负责的问题流程化,编写相对简单 缺点:可扩展性差 ②面向对象:一切以对象为中心. 一切皆为对象. 具体的某一 ...
- 跟着太白老师学python 09day 初识函数
函数的最主要的目的:封装一个功能 函数的优点: 减少代码的复用率, 增加代码的阅读性 def my_len(arvg): # arvg 形参 my_len函数名,应该具有代表性,让你一看就明白 # 函 ...
- Python之初识函数(Day11)
一.函数的定义与调用 总结一: 定义:def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":". def 是固定的,不能变,必须是连续的def三个字母,不能分开... ...
- 11 Python之初识函数
---恢复内容开始--- 1. 什么是函数? f(x) = x + 1 y = x + 1 函数是对功能或者动作的封装 2. 函数的语法和定义 def 函数名(): 函数体 调用: 函数名() 3. ...
- python之路——初识函数
阅读目录 为什么要用函数 函数的定义与调用 函数的返回值 函数的参数 本章小结 返回顶部 为什么要用函数 现在python届发生了一个大事件,len方法突然不能直接用了... 然后现在有一个需求,让你 ...
- python基础之 初识函数&函数进阶
函数基础部分 1.什么是函数? 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率. 2.定义函数 定义:def 关键词开头,空格之后接函数名 ...
- 16.python内置函数
Python 内置函数:https://www.runoob.com/python/python-built-in-functions.html 原文:https://www.cnblogs.com/ ...
随机推荐
- js中promise解决callback回调地狱以及使用async+await异步处理的方法
1.callback回调地狱 function ajax(fn) { setTimeout(()=> { console.log('你好') fn() }, 1000) } ajax(() =& ...
- Ambari 自定义服务集成原理介绍
之前,在 github 上开源了 ambari-Kylin 项目,可离线部署,支持 hdp 2.6+ 及 hdp 3.0+ .github 地址为:https://github.com/8418090 ...
- 5分钟搞清楚Synchronized和Lock的概念与区别
前言 并发编程中,锁是经常需要用到的,今天我们一起来看下Java中的锁机制:synchronized和lock. Synchronized 和 Lock的概念 Synchronized 是Java 并 ...
- centos7 php(mariadb)安装pdo
环境:centos7+php5.4.16+mariadb5.5.52 在centos7环境下安装PDO,安装的时候都是自己分开安装的,先装的PHP(httpd)后装的mariadb. 数据库安装完成后 ...
- JavaScript图形实例:圆形图案
在HTML5的Canvas 2D API中,可以调用arc方法绘制圆或圆弧.该方法调用格式为: context . arc(x, y, radius, startAngle, endAngle, an ...
- Delphi解析修改Json文件,基于superobject.pas(ISuperObject)
在经过一系列的波折后,还是觉得delphi读取并修改json文件来的方便: 在网络上找到一个delphi的三方库ISuperObject,添加到项目后直接引用就行: 下载地址 ISuperObject ...
- 松软科技Web课堂:JavaScript Break 和 Continue
break 语句“跳出”循环. continue 语句“跳过”循环中的一个迭代. Break 语句 在本教程稍早的章节中,您已见到了 break 语句.它被用于“跳出” switch 语句. brea ...
- centos7 nginx 配置
1.下载nginx 官方下载1.6.2 2.编译安装 [root@bogon nginx-1.6.2]# ./configure --prefix=/usr/local/webserver/nginx ...
- SQLserver还原失败(数据库正在使用,无法获得对数据库的独占访问权)
问题描述: Sql server还原失败(数据库正在使用,无法获得对数据库的独占访问权) 数据库还原的时候还有其他进程连在上面,导致无法获得独占造成的. 这个问题的原因在于有用户连接了当前要做还原的数 ...
- UWP 使用FontIcon
通常在设置按钮内容的时候,我们一般会写上文字,比如 <Button Content="OK"/> 但是有一些特殊情况,比如我们的按钮需要一个图标, 这个时候就需要一些特 ...