zoukankan      html  css  js  c++  java
  • 关于Python args 与 **kwargs

    首先Python函数参数可以是多个可选的
    比如args传进来一个list可以遍历里面的非必要参数
    比如**kwargs传进来一个dict可以根据参数名来找到对应的value
    然后遇到的问题是,有时候包太多层太复杂的情况时,或者开发者根本不知道别人传进来啥参数时,就帮着继续传,导致最后这个kwargs里面混杂着许多奇怪且不知名的东西,并且可能永远也没人用到这个可选参数

    于是就从方便变成了被人唾弃

    遇到一个情况,**option表示函数的可选参数,因为传了太多层,导致很混乱,今天弄了个小功能,结果基类里的 **option已经包含太多奇怪的东西,大家扬言再加入 **option就杀了我,于是有一个操作可以在我使用的外层提前捞出我想要的可选参数,使得 **option里的内容不被污染
    代码如下

        def __init__(self, path: str, value:str = 'something', **options):
            super().__init__(path, **options)
            self.value = value
    

    临时记得笔记,以后有机会再详细补充

  • 相关阅读:
    luogu 2627 修剪草坪
    luogu2746 [USACO5.3]校园网Network of Schools
    luogu 1558 色板游戏
    luogu 2827 蚯蚓
    POJ 2559 Largest Rectangle in a Histogram
    luogu 1886 滑动窗口
    luogu 1090 合并果子
    uva 11572
    uva 12626
    uva 10222
  • 原文地址:https://www.cnblogs.com/kuronekonano/p/12392102.html
Copyright © 2011-2022 走看看