zoukankan      html  css  js  c++  java
  • Python-----明月楼高休独倚

    函数的传参

    1.形参角度:第三种传参方式。

    2.*的魔性用法

    3.形参角度的最终顺序

    4.函数的传参:形参角度:第四种传参方式(了解)

    动态参数 *args **kwargs(真正有魔性的是 *号)

    # def eat(food1,food2,food3):
    #     print(f'我请你吃:{food1},{food2},{food3}')
    # eat('蒸羊羔','蒸熊掌','蒸鹿尾')
    
    # 当给函数传入的参数数目不定时,之前的传参方式解决不了问题。
    # 万能参数,动态参数。 *args
    # def eat(food1,food2,food3):
    #     print(f'我请你吃:{food1},{food2},{food3}')
    # eat('蒸羊羔','蒸熊掌','蒸鹿尾','烧花鸭','烧企鹅')
    
    def eat(*args):  # 将实参角度:定义一个函数时,* 所有的位置参数聚合到一个元组中。
        print(args)
        print(f'我请你吃:{args}')
    eat('蒸羊羔','蒸熊掌','蒸鹿尾','烧花鸭','烧企鹅')
    

    5.从空间角度研究函数

    全局名称空间: py文件运行时开辟的,存放的是执行的py文件(除去函数内部)的所有的变量与值(地址)的对应关系,整个py文件结束之后,才会消失。

    临时(局部)名称空间: 函数执行时,在内存中临时开辟的一个空间,存放的函数中的变量与值的对应关系,随着函数的结束而消失。

    内置名称空间:input,print,内置函数等。

    6.取值顺序加载顺序

    加载顺序:上面这三个空间,谁先加载到内存。

    内置名称空间 ----》 全局名称空间 ----》 (函数执行时)临时名称空间

    取值顺序:(就近原则)

    7.作用域

    全局作用域:全局名称空间,内置名称空间。

    局部作用域:局部名称空间。

    8.内置函数:globals,locals

    9.高阶函数(嵌套函数)

    总结

    函数的传参:万能参数 args,**kwargs,a,b = [1,2,3,4]

    函数的顺序:位置参数,*args, 默认参数,仅限关键字参数,**kwargs

  • 相关阅读:
    54. 八皇后问题[eight queens puzzle]
    53. 特殊的O(n)时间排序[sort ages with hashtable]
    52. 不用+、-、×、÷做加法[add two numbers without arithmetic]
    C++基础知识面试精选100题系列(11-20题)[C++ basics]
    C++基础知识面试精选100题系列(1-10题)[C++ basics]
    洛谷 P1479 宿舍里的故事之五子棋
    洛谷 P2084 进制转换
    codevs 1700 施工方案第二季
    POJ 3278 Catch That Cow(求助大佬)
    POJ 2251 Dungeon Master
  • 原文地址:https://www.cnblogs.com/hql1117/p/11045589.html
Copyright © 2011-2022 走看看