• 动态参数 : *args

    • 实参角度: 定义一个函数时, * 将所有的位置参数聚合到一个元祖中

    • 顺序 : 位置参数 > * args > 默认参数 > **kwargs

    • 接受所有参数 :

      def fun (*args,**kwargs):
      print(args,kwargs)
      fun(11,2,sex = 3,)
    • 在实参位置上给一个序列,列表,可迭代对象前面叫上*表示把这个序列按顺序打散,打散字典需要用**

    • 在形参的位置上的*表示把接受到的参数组合成一个元组,

  • 仅限关键字参数。(了解)

6.命名空间

  • 从空间角度研究函数

    • 全局空间名称 : py文件运行时所开辟的空间,存放的是执行的py文件(除去内部函数)的所有变量与值(地址)的对应关系,整个py文件结束之后,才会消失
    • 临时(局部)名称空间 : 函数执行时,在内存中临时开辟的一个空间,存放的函数中的变量与值的对应关系,随着函数的结束而消失
    • 内置名称空间 : input ,print 内置函数等
  • 取值顺序加载顺序
    • 加载顺序 : 上面三个空间,谁先加载到内存

      • 内置名称空间--->>全局名称空间--->>(函数执行时)临时名称空间
    • 取值顺序 : 就近原则
  • 作用域
    • 全局作用域 : 全局名称空间,内置名称空间
    • 局部作用域 : 局部名称空间
  • 内置函数
    • globals : 查看全局作用域
    • locals : 查看当前作用域
  • 高阶函数(嵌套函数)

函数动态参数和Python中的三种空间的更多相关文章

  1. python中的三种输入方式

    python中的三种输入方式 python2.X python2.x中以下三个函数都支持: raw_input() input() sys.stdin.readline() raw_input( )将 ...

  2. Python中的三种数据结构

    Python中,有3种内建的数据结构:列表.元组和字典.1.列表     list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目.列表中的项目.列表中的项目应该包括在方括号中,这 ...

  3. Python中的三种等待时间

    一.强制等待 不论页面是否加载完成,都要等待指定时间才能执行下一步,  单位秒,time.sleep(5) import time time.sleep(10) # 强制等待10秒时间 二.隐式等待( ...

  4. python 中的三种等待方式

    为什么要用等待时间: 今天在写App的自动化的脚本时发现一个元素,但是往往执行脚本是报错( An element could not be located on the page using the ...

  5. 函数动态参数实现format

    变量赋值一种是字符串格式化,一种是通过format的方式 1.字符串格式化 s="i am %s,age %d"%('Jasper',23)print(s) 打印输出:i am J ...

  6. python中实现三目运算

    python中没有其他语言中的三元表达式,不过有类似的实现方法 如: a = 1 b =2 k = 3 if a>b else 4 上面的代码就是python中实现三目运算的一个小demo, 如 ...

  7. python中的三引号

    在python中,三引号支持字符串跨多行.包含换行符号.制表符号.以及其它特殊字符 >>> hi = ''' ... this ... is a ... test ... ''' & ...

  8. js中的三种函数写法

    js中的三种函数写法 <script type="text/javascript"> //普通的声明方式 function myFun(m,n){ alert(m+n) ...

  9. SuperDiamond在JAVA项目中的三种应用方法实践总结

    SuperDiamond在JAVA项目中的三种应用方法实践总结 1.直接读取如下: @Test public static void test_simple(){ PropertiesConfigur ...

随机推荐

  1. 干货 | 把Flutter扩展到微信小程序端的探索

    Google Flutter是一个非常优秀的跨端框架,不仅可以运行在Android. iOS平台,而且可以支持Web和桌面应用.在国内小程序是非常重要的技术平台,我们也一直思考能否把Flutter扩展 ...

  2. scrapy练习1

    1.建立项目: #建立名为tuto的项目 scrapy startproject tuto 2.进入项目目录: cd tuto 3.建立域名任务: #minyan任务名:后面是任务对应的域名 scra ...

  3. sys.path.append()加入当前目录为环境变量

    当我们导入一个模块时:import  xxx,默认情况下python解析器会搜索当前目录.已安装的内置模块和第三方模块,搜索路径存放在sys模块的path中: >>> import  ...

  4. 吴裕雄--天生自然 JAVASCRIPT开发学习: DOM 事件

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  5. PAT 2011 秋

    A : World Cup Betting #include <cstdio> #include <iostream> #include <algorithm> u ...

  6. flask前后端数据交互

    1.后端如何得到前端数据1)如果前端提交的方法为POST:后端接收时要写methods=[‘GET’,‘POST’]xx=request.form.get(xx);xx=request.form[’‘ ...

  7. [De1CTF 2019]SSRF Me-MD5长度扩展攻击&CVE-2019-9948

    0x00 打开题目查看源代码,开始审计 这里贴上网上师傅的博客笔记: https://xz.aliyun.com/t/6050 #! /usr/bin/env python #encoding=utf ...

  8. 深度学习常用的数据源(MNIST,CIFAR,VOC2007系列数据)

    MINIST手写数据集 压缩包版: http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz http://yann.lecun.com/ ...

  9. JAVA初学者——DOS命令及基本数据类型

    Hello!大家好!我是浩宇大熊猫~ 昨天看了韩顺平老师第二节视频的课,记忆尤新的是那个数据类型那一块,可是昨天感觉没掌握就没有发博客. 今天,又看了一遍,加上看了一些其他老师的,有所收获,所以分享给 ...

  10. ubuntu14.10安装gitlab

    1 换源: # curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/ ...