python中的隐式参数

implicits的Python项目详细描述


#隐式
全局状态可能很难解释,但将依赖关系从一个函数传递到另一个函数是一件痛苦的事。使用隐式,可以显式地确定哪些函数参数是隐式依赖项。调用函数时,无需明确提供这些参数;相反,这些参数将被隐式传递!所有需要的范围内存在与您调用的参数的名称匹配的局部变量。
‘Python 3bR/> @暗示(
DEF CREATEY任务(title,*,CurriteUsAuthor):< BR/>打印(F){CurriteUsAuth}创建了一个名为“{title }”的任务)
Br/> CurrnthUpAs=“杰登”< BR/> CeaTyTeTo任务(“Hooray,任务!”)#杰登创建了一个名为“万岁,任务!”
create_task(“buy some trackpants”)jaden创建了一个名为“buy some trackpants”的任务
````

“参数”)`.

示例
`` python3
导入日志
从隐式导入隐式导入boto3


logger):
self.name=name
logger.info(f“创建名为{name}的长颈鹿”)

@property
@implicits(“logger”)
def full\u name(self,*,记录器):
logger.info(f“获取{self.name}的全名”)
返回f“{self.name}长颈鹿”

@property
@implicits(“food”)
def饥饿(self,*,food):
return“leaves”in food

@implicits(“logger”)
def main(*,记录者):
jeff=giraffe(“jeff”)创建一个名为jeff的长颈鹿“污垢”]
logger.info(jeff.is'u hung肚子)false
food.append(“leaves”)
logger.info(jeff.is'u hung肚子)false
food.append(“leaves”)
logger.info(jeff.is'u hung肚子)true

logger=logging.getlogloglogloglogger()
logger.setlevel(logging.info)
logger.addhandler(logging.streamhandler())



>main()
//>main()
`````>br/>
```啊!许多其他语言支持隐式参数。这些语言中最主流的是scala。[看看它在scala中是如何工作的!](https://docs.scala-lang.org/tour/implicit parameters.html)



欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JAXB封送字符串,具有xml值,且不转义该值   java ModelMapper转换器不工作   java像HH000412或HCANN000001这样的前缀是什么意思?   验证日期输入修复java。lang.numberformatexception错误   当表具有外键时,java Telosys代码生成失败   如何使所有派生类一起只能实例化一个实例的单例抽象基类?(爪哇)   java如何在非静态服务类中使用广播接收器   java nutch爬虫相对URL问题   使用Jboss DMR下载/保存java附件   Rest模板:无法提取响应:当我们得到xml响应时,没有找到适合响应类型的HttpMessageConverter,没有绑定到JAVA对象   java如何编写可扩展窗格/面板/卡的代码   java是在ITreeViewerListener的treeExpanded()之前调用ContentProvider的getChildren()吗?   java将JComponent添加到小程序窗格   java混淆:使用简单逻辑的Flames程序