函数:

作用:代码重用性,数据一致性,可移植和扩展。

在python3.x中 过程和函数都是 def 函数名(形参): 如此定义,而区别是函数有return 返回值,而过程没有,但是默认返回None,return 可以返回多个值,用逗号隔开(实际上是一个元组),return 还有结束函数运行的作用。

函数调用:先定义函数,对应传参才能调用(一般定义的形参个数必须大于等于传入的实参个数,因为可能会有默认参数,参数组会除外,即是 *args(元组),**kwargs(字典)),传参有位置传参和关键字传参,

参数组:主要用于不确定实参传入个数时,或是直接想传入元组或是字典。

默认参数:形参位置有默认值,不传此位置的参数,会根据默认值计算,否则按传入的计算    

例: def test(x,y,z):

    ''' 一般这里写注释'''

    print(x,'---',y,'---',z)

    return 'test----'

位置传参调用: test(2,4,5)->一一对应x,y,z

关键字传参:test(y=2,x=4,z=8),找到对应的形参名并赋值

当混用二者时,位置传参在前面(必须对应传参才能调用) 如: test(2,z=6,y=3)

*args  如:

def test1(x,*args):

    print(x,'---',args)

    return 'test1----'

可test1(2,4,5,6)->x=2 args:(2,4,6); 即是把多余的位置传参变成元组

还可test1(2)->x=2,args:(),不传为默认空元组,test1(x=3,*[2])->x=3,args:(3,);test1(6,*(2,5))->x=6,args:(2,5)

**kwargs 如:

  def test3(x,y=6,**kwargs):

    print(x,'---',y,'---',kwargs)

    return '222'

test3(6,name='ddd',kk='gg')->x=6,y默认为6,kwargs位{‘name’:'dd','kk':'gg'},即是把对应多的关键字传参变成key=>value对应的字典,注意:需要传入字典的key最好不要和其它形参相同名,不然会报多传的错误的。

test3(y=3,x=5,mm='fff')->x=5,y=3,kwargs:{'mm':'fff'};test3(7,1)->x=7,y=1,kwargs:{};test3(x=3,3,**{'name':'55'})->x=3,y=3,kwargs:{'name':'55'}

3.x 全局变量及局部变量:

全局变量:一般在程序顶级定义的变量就是全局变量,而在子程序(一般是函数)里定义的变量一般是局部变量,如果同名,在局部作用域里局部变量起作用,反之亦然。

当全局变量是比较复杂的类型(一般是列表,字典,集合)时,在函数中是可以直接修改了全局变量

当全局变量是单一类型(字符,数字等)时,在函数中可用 global 重新定义全局变量名 就可修改(一般不建议如此,因为可能不知道函数被调用几次)

在函数内可定义全局变量(直接 global 变量名),一般不建议如此。

转载于:https://www.cnblogs.com/wh-alan/p/8420910.html

武道之路-炼体期五重天相关推荐

  1. 武道之路-炼体期五重天巅峰

    理解函数即变量. 函数嵌套:在一个函数里定义一个函数调用(可嵌套多层,注意区分好局部作用域和全局作用域) def test(): def testx(): test() 高阶函数: 把一个函数名作为实 ...

  2. 武道之路-炼体期六重天巅峰

    模块和包: 从包中导入模块:需要在包下的__init__.py(from . to 模块名,.代表当前目录)文件中导入相应的模块(注意路径,__file__,os.path.abspath() ,os ...

  3. 修行等级对比 鸿蒙,普及下:修行等级,武道九境(简化了很多)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 [修行等级] 分修士练气士和纯粹武夫两种路径. 只不过在高高在上的练气士眼中,没有修道天赋.才只好退而求其次去武道修行之人,属于"下九流&quo ...

  4. 《武道神尊》12.29上线链游玩家|放置挂机、轻松修真

    导语:<武道神尊>是一款"文字修真放置卡牌游戏",玩家将扮演一位不被家族待见的"废物",在实力为尊的世界中,一步步努力修炼并最终走上巅峰." ...

  5. 直击安全狗攻防武道大赛:完美防护与技术牛人的巅峰对决

    2019独角兽企业重金招聘Python工程师标准>>> DoNews 9月26日消息 9月25日,在2014中国互联网安全大会上,由服务器安全防护软件安全狗发起的"安全狗攻 ...

  6. NO.80 禅道使用分享第九期:测试部门缺陷管理的新需求

    为什么80%的码农都做不了架构师?>>>    关于禅道使用经验分享 禅道使用经验分享,欢迎大家一起来探讨关于禅道项目管理软件使用方面的问题.我们广泛的收集对禅道的看法和建议,充分了 ...

  7. Java修道之路,问鼎巅峰,我辈代码修仙法力齐天

    代码尽头谁为峰,一见秃头道成空. 编程修真路破折,一步一劫渡飞升. 众所周知,编程修真有八大境界: Javase-练气筑基 数据库-结丹 web前端-元婴 Javaweb-化神 Javaweb项目-炼 ...

  8. [武道资料]《菲律宾短棍-单棍》(Edgar Sulite Lameco Escrima Single Stick)

    中文名称:菲律宾短棍-单棍 英文名称:Edgar Sulite Lameco Escrima Single Stick 别名:菲律宾魔杖, kaliSticks, Escrima Sticks, ar ...

  9. [转载] 七龙珠第一部——第019话 天下第一武道会开始

    转载于:https://www.cnblogs.com/6DAN_HUST/archive/2013/04/17/3025719.html

  10. 武道世界java一键端_神鬼世界MC完整一键端架设超详细教程(新手向).docx

    神鬼世界MC完整一键端架设超详细教程(新手向) 神鬼世界完整一键端架设详细教程 By 独霸╰つlwt℡ 最近兽医老大放出了可存储信息的神鬼世界完整一键端,在群里也是倍受欢迎,但有很多人安装过程出现了这 ...

最新文章

  1. micronet 测试
  2. python真的超过java了吗-java会被python淘汰吗?
  3. 数据结构与算法JavaScript描述——链表
  4. Linux编程网络通信
  5. 如何搭建一个 Data Guard 环境
  6. WhatFont——Google Chrome字体识别扩展
  7. 内外分离接口依赖及UIScrollView知识点
  8. dfs-Bit Compression
  9. L2TP-***通用原理取证及在华为防火墙上的实施
  10. 医院信息化建设少不了CRM呼叫中心
  11. 英语口语笔记B1-Unit04.家居生活-02-Buying household products
  12. MATLAB中BLAS加载错误,找不到指定模块
  13. 【解决方法】ubuntu20 hp1020 打印机不识别无反应
  14. 全球数字高程模型(数据)
  15. Ubuntu恶意文件分析环境搭建--安装Cuckoo Sandbox记录
  16. C# 如何捕获键盘按钮和组合键以及KeyPress/KeyDown事件之间的区别 (附KeyChar/KeyCode值)
  17. 计算机安装系统有哪些东西,重装系统电脑里的东西还有吗|电脑重装系统后原来的东西还在吗...
  18. unittest自动化测试-requests库实现http请求与requests库离线安装
  19. 显示“对于目标文件系统,目标文件过大”,无法复制
  20. 【数据结构与算法学习笔记001】Kalman滤波

热门文章

  1. 2021-06-06label标签 icon 图标设置
  2. 树展示 移动端_企业快速搭建移动BI轻应用,怎么少得了这款BI工具
  3. linux 实时查看日志 最新最后100行 tail
  4. 基于springboot的失物招领系统
  5. 2021-04-03
  6. 直线度误差 matlab,基于MATLAB的直线度误差数据处理
  7. 二十三、Oracle学习笔记:综合案例
  8. 九、面向对象三大特征(三)—— 多态
  9. 完美解决Python与anaconda之间的冲突问题
  10. LayaAir HttpRequest 网络访问