1. 函数
 def 函数名(): #函数名与变量相同
  函数体

(1) 函数返回值: return
 1. 遇到return,结束函数

def list_a():
  print(123)
  print(456)
  return
  print(798)
  print(abc) 
 list_a()
 #输出结果
 123
 456
 
(2) 给函数的调用者返回值:
 s1 = '123325436456'

def my_len(): #函数定义()放的是形式参数
  count = 1
  for i in s1:
   count += 1
  return count
 ss = my_len() #<---第一步先执行 #函数的执行()实际参数,实参
 print(ss) #返回值给print 打印count
 
 
 13  <----这就是返回值
 
 无return 返回None
 return 不写 或者None 返回None
 return 单个数据,后面写什么 返回什么(int)
 return 多个数据,返回元祖(tuple)
 
 还可以分别赋值
 def my_len():
  count = 1
  for i in s1:
   count += 1
  return 666,222,count
 off1,off2,off3 = my_len()
 print(off1)
 print(off2)
 print(off3)
 
 s1 = '123325436456'
 a = [1,2,3,4,5,'老男孩']
 b = 'adsfasfsadfgd'

def my_len(ff):
  count = 1
  for i in ff:
   count += 1
  return count
 ret = my_len(a)
 oo = my_len(b)
 kk = my_len(s1)
 print(ret)
 print(oo)
 print(kk)
 #输出结果
 7
 14
 13
 传参方向:
 从实参角度
 (1)位置参数 #必须一一对应,按顺序
 def funcl(x,y):
    print(x,7)
 funcl(1,2)
 输出结果
 1 2
 (2)关键字参数 #必须一一对应,不分顺序
 def funcl(x,y,z):
  print(x,y,z)
 funcl(y=2,x=3,z=5)
 输出结果
 3 2 5
 小练习:传参2个数,比较大小,打印大的数
 def l_n(x,y):
    if x > y:
        print(x)
 l_n(6,5)
 或者
 def l_n(a,b):
 return a if a > b else b
 print(l_n(3,2))
 
 (3)混合参数(有位置还有关键字参数)----关键字参数必须在位置参数的后面
 def fa2(a1,a2,a3):
    print(a1)
    print(a2)
    print(a3)
 a2(1,2,a3=4)
 
 从形参角度
 (1)位置参数 #必须一一对应,按顺序
 def funcl(x,y):
    print(x,7)
 funcl(1,2)
 
 (2)默认参数#
 def register(name,sex='男'): #sex 默认是男
  with open('register',encoding='utf-8',mode='a') as f:
   f.write('{} {}\n'.format(name,sex))
 while True:  
  username = input('请输入姓名: /q 退出')
  if username.upper() == 'Q':break
  sex = input('请输入性别: ')   #全是男的 就可以默认参数
  register(username,sex)
 
 (3)动态参数 *args , **kwargs 万能参数 # 函数的定义 * 聚合。
 def func2(*args,**kwargs):
  print(args) #元祖(所有位置参数)
  print(kwargs) #字典
 func2(1,2,3,4,5,6,7,11,'alex','老男孩',a='ww',b='qq',c='222')
 
 def func3(a,b,sex='男',*args)
  print(a)
  print(b)
  print(sex)
  print(args)
 func3(1,2,'老男孩','alex','wusir') #顺序,位置参数,*args,默认参数 **kwargs

def funcl(*args,**kwargs):
  print(args)
  print(kwargs)
 ll = [1,2,3,4]
 lll = (1,2,3,4)
 12 = ['alex','wusir',4]
 funcl(*ll,*12,*lll) # 函数的执行: *打散功能

(1, 2, 3, 4, 'alex', 'wusir', 4, 1, 2, 3, 4)
 {}

def funcl(*args, **kwargs): #函数的聚合
  print(args)
  print(kwargs)

dic1 = {'name1':'liyun'}
 dic2 = {'name2':'laowang'}
 funcl(**dic1,**dic2) #函数的打散

转载于:https://www.cnblogs.com/liwei-python-21/p/8895010.html

函数名,函数体,返回值,参数相关推荐

  1. 创建一个Python脚本,实现以下功能。(1)定义一个函数,用于计算圆柱体的表面积、体积,函数名为comput,.输入参数为底半径(r)、高(h),返回值为表面积(S)、体积(V),返回多值的函

    创建一个Python脚本,实现以下功能. (1)定义一个函数,用于计算圆柱体的表面积.体积,函数名为comput,.输入参数为底 半径(r).高(h),返回值为表面积(S).体积(V),返回多值的函数 ...

  2. python函数参数定义顺序_Python函数定义-位置参数-返回值

    原标题:Python函数定义-位置参数-返回值 1 函数介绍 函数在编程语言中就是完成特定功能的一个词句组(代码块),这组语句可以作为一个单位使用,并且给它取一个名字.可以通过函数名在程序的不同地方多 ...

  3. 函数概念 返回值 参数

    一.函数概念 1.什么是函数函数就是具有某个具体功能的工具 2.为什么要用函数提供开发效率减少代码冗余提高程序的扩展性 3.定义一个函数def是定义函数的关键字,函数在定义的时候只检测函数体语法 不执 ...

  4. spring aop如何在切面类中获取切入点相关方法的参数、方法名、返回值、异常等信息

    aop思想可以很好的帮助我们实现代码的解耦,比如我们之前提到的,将日志代码与业务层代码完全独立,通过spring aop的代理类进行整合.在切面类中,我们也能够通过spring提供的接口,很好的获取原 ...

  5. Python技术手册 · 函数的多返回值&文件操作

    目录 ​函数的多返回值&文件操作 ​函数的多返回值 ​多返回值返回方式 ​函数的传参方式(以不同的使用方式分类) 位置参数 关键字参数 缺省参数 不定长参数 ​匿名函数(lambda) ​函数 ...

  6. function 函数和return返回值

    function 函数和return返回值 可以用来封装代码,它里面的代码不会立即执行 需要使用 函数名() 来调用里面的代码 语法:function 函数名 ([形参1,形参2,.....形参n]) ...

  7. C++中函数模板的返回值是模板类型参数的调用方法

    1 函数模板 模板定义以关键字template开始,后接模板形参表,模板形参表是用尖括号扩住的一个或多个模板形参的列表,形参之间以逗号分隔.关于函数模板的详细介绍,请参考<C++中模板函数及模板 ...

  8. linux内核函数出错的返回值

    linux内核函数出错的返回值 1. 函数返回指针 2. 如何通过错误信息指针来返回错误信息 3. 出错代码返回指针在(-1000,0)区间 4. 错误的判断和错误原因的打印 4.1 错误的判断 4. ...

  9. Python基础学习_函数数def_返回值及返回值类型_函数块

    一. 返回值 函数作用:显示输出.处理数据并返回数据结果 函数返回值的定义:函数返回值被称为返回值 写法: 函数体内 return 返回值 (将值返回到调用函数的代码行) 返回值类型: "& ...

  10. c语言子函数返回值,C语言函数说明与返回值

    在学习C语言函数以前,我们需要了解什么是模块化程序设计方法. 人们在求解一个复杂问题时,通常采用的是逐步分解.分而治之的方法,也就是把一个大问题分解成若干个比较容易求解的小问题,然后分别求解.程序员在 ...

最新文章

  1. Gromacs 5.1.4 在CentOS7下GPU加速版的安装
  2. 重新定义SpringCloud-SpringCloud Eureka笔记- Eureka的核心类(二)
  3. dell服务器 win7系统安装教程,dell官方win7系统64位系统安装教程
  4. 网站权重增长缓慢,优化技巧是关键!
  5. [cocos2d-x]游戏开发系列教程-搭建cocos2d-x的windows开发环境
  6. android教程登陆,【教程】Android 记住密码和自动登录界面的实现
  7. 使用协同过滤进行众包服务的工人工作自动化推荐
  8. 趣味编程:从字符串中提取信息(参考答案 - 下)
  9. 回顾 | Apache Flink x TiDB Meetup · 北京站
  10. C# default關鍵字
  11. 中石油训练赛 - Gone Fishing(固定大小的圆可以覆盖最多的点)
  12. bp配置 sap_SAP转储订单之 STO without delivery
  13. BestCoder Round #39 解题报告
  14. 老实人做不得?教练微信工作群内“说错话”遭公司索赔46万元
  15. flink 三种时间机制_Flink时间系列:Event Time下如何处理迟到数据
  16. ldc1614 c语言编程,LDC1614读回来的数据为固定值不变
  17. 一文读懂运放偏置电流和输入失调电流
  18. 37页pdf,埃默里大学最新「大数据时代事件预测」综述,ACM顶级期刊上发表
  19. 2018年最值得关注的10家区块链公司新秀
  20. Google(谷歌)走了我们该用什么呢?

热门文章

  1. 科发财务凭证登陆出现错误:40002
  2. 在html中代码规范是哪个键,HTML代码规范经验
  3. 全阶滑模观测器程序_滑模观测器转子估算程序
  4. clob mybatis_spring + mybatis 存取clob
  5. 将模块放入到一个项目中展示_一个号称NB的开源电商系统
  6. mysql trim 索引_mysql 强大的trim() 函数
  7. eclipse ide for c/c++_大众CC新款开启新的人生 辉煌报价钜惠 _车讯网chexun.com
  8. h3c服务器系统关闭pxe,h3c服务器设置pxe启动
  9. ajax中判空函数,jQuery Ajax成功函数数据为空?
  10. Springboot整合Nacos配置中心