zoukankan      html  css  js  c++  java
  • 自学python day 10 函数的动态参数、命名空间、作用域

    作业提升:

      s为字符串

      s.isalnum() 所有字符都是字母或者数字

      s.isalpha() 所有字符都是字母

      s.isdigit() 所有字符否是数字

    2. for i in range(1,10,3)的用法

      从1到10,以步长为3 查找数据 即 1 4 7 10

    3.   用Ture    和 False  来判断

    4. 三元表达式

       a if  a  > b  else  b    如果a>b成立  返回前面的a ,不成立返回最后b

      

    今日主要内容

    1. 动态参数 
      位置参数的动态参数: *args         *一个

        def  chi (*food)   可以传入任意的位置参数,#可以接受很多

      关键字参数的动态参数 : **kwargs  **两个

        def func(**kwargs):   

          print(kwargs)

        func(a=1, b=2, c=3)                   #结果为字典

        func(a=1, b=2)                      结果: {'a': 1, 'b': 2, 'c': 3} {'a': 1, 'b': 2}
    顺序:
      位置,*args,默认值,**kwargs
      在形参上*聚合, **聚合
      在实参上*打散, **打散

    2. 命名空间和作用域
    命名空间:
      1. 内置命名空间: python解释内部运行时的变量函数
      2. 全局命名空间: 我们在py文件中直接声明出来的变量,函数
      3. 局部命名空间: 在函数内部声明的变量和函数.

      加载顺序:内部>全局>局部

      取值顺序:内部<全局<局部
    作用域:
      1.全局作用域:内置+全局
      2.局部作用域:局部          #拿到的是就近原则
        globals() 查看全局作用域中的名字
        locals() 查看当前作用域中的名字

    函数的嵌套 

    3. global和nonlocal
      global: 把全局变量拿到局部来用.
      nonlocal: 把离他最近的一层的变量拿过来.不会找全局

  • 相关阅读:
    Centos下使用gitosis配置管理git服务端(转载)
    学习git遇到的一些简单错误
    通过IP连接网上打印机(转载)
    Porlet标准:JSR168/JSR286/WSRP(转载)
    网络泛洪(转载)
    Linux Shell入门(转载)
    Shell中set用法(转载)
    数据结构实验之链表五:单链表的拆分(SDUT 2120)
    数据结构实验之链表五:单链表的拆分(SDUT 2120)
    数据结构实验之链表四:有序链表的归并(SDUT 2119)
  • 原文地址:https://www.cnblogs.com/xiaobai686/p/11638639.html
Copyright © 2011-2022 走看看