zoukankan      html  css  js  c++  java
  • python学习第十天

    今日所学内容:
    # 位置参数 > *args > ,默认值参数 > **kwargs

    def yana(*kind):
    print(kind)

    yana('黑兰州','飞天兰州','吉祥兰州')

    def yanb(**kind):
    print(kind)

    yanb(yan1='黑兰州',yan2='飞天兰州',yan3='吉祥兰州')

    def yanc(*k,**f):
    print(k,f)



    yanc('黑兰州','飞天兰州','吉祥兰州',yan1='黑兰州',yan2='飞天兰州',yan3='吉祥兰州')
    1. 动态传参
    形参:
    1. 位置参数
    2. 默认值参数
    3. 动态传参
    1 *args: 动态接收位置参数
    2 **kwargs:动态接收关键字参数
    顺序: 位置, *args, 默认值, **kwargs

    *, **:
    def func(*args, **kwargs): 无敌传参
    pass
    *, ** 在形参位置: 聚合
    在实参位置: 打散
    实参:
    1. 位置参数
    2. 关键字参数
    3. 混合参数

    2. 名称空间和作用域
    名称空间: 保存名字用的
    变量, 函数, 类

    1. 内置名称空间:python自己, print, input, len
    2. 全局名称空间: 你写的代码从上到下
    3. 局部名称空间: 函数, 类, 方法, 其他模块, 对象

    作用域
    全局作用域
    内置 + 全局
    局部作用域
    局部名称空间
    从局部找全局可以. 但是从全局找局部是不可以的

    globals() 查看全局作用域中的名字
    locals() 查看当前作用域中的名字

    3. 函数的嵌套(难点)
    每一层都会产生独自的名称空间
    4. nonlocal global
    global: 在局部引入全局的内容, 可以升华一个变量为全局变量
    nonlocal : 在局部, 引入上一层名称空间中的变量, 如果没有, 继续上一层......
  • 相关阅读:
    10年后编程还有意义吗?
    专访Jeffrey Richter:Windows 8是微软的重中之重
    x86汇编指令脚本虚拟机
    基于容器的持续交付管道
    NET Core 整合Autofac和Castle
    数据结构与算法1
    Redis集群
    react + iscroll5
    MongoDB
    WebComponent
  • 原文地址:https://www.cnblogs.com/EuanXu/p/9879827.html
Copyright © 2011-2022 走看看